Nuovi utenti impossibilitati ad unirsi al forum, l'accettazione dell'invito porta a un errore interno del server

Aiuto!
Sono un amministratore di un forum Discuss in PractiTest.

Recentemente i nuovi utenti non riescono ad accedere, ricevono un messaggio di errore “Qualcosa è andato storto, forse il nome utente o l’email sono già registrati. Prova il link password dimenticata”.
Quando invito i nuovi utenti, ricevono l’email di invito, ma dopo aver compilato tutti i dettagli appare un messaggio “Errore interno del server”.
Ho controllato i log degli errori e questo è ciò che vedo per il tentativo di accettazione dell’invito:

ActiveRecord::RecordNotUnique (PG::UniqueViolation: ERROR: duplicate key value violates unique constraint \"user_emails_pkey\" DETAIL: Key (id)=(45) already exists. ) app/models/invite_redeemer.rb:80:

Failed to handle exception in exception app middleware : PG::UniqueViolation: ERROR: duplicate key value violates unique constraint \"user_emails_pkey\" DETAIL: Key (id)=(45) already exists.

Ho provato ad aggiornare all’ultima versione di Discourse e sembra che ci sia riuscito (2.9.0.beta1).

Per favore, aiutami!

Da quale versione stavi aggiornando? Qual è la versione di postgres?

Non ricordo, ma ecco cosa ho trovato nei log:

from_version: 11d61cb
repository: /var/www/discourse/plugins/docker_manager

E come posso controllare la versione di Postgres?

Posso fornire altre informazioni?

Qualcuno?
Apprezzerei molto qualsiasi guida in merito
@pfaffman

Penso che nessuno abbia offerto risposte perché non ce ne sono di buone.

La versione di Postgres si trova in
/var/discourse/shared/standalone/postgres_data/PG_VERSION

O qualcosa del genere. Sono al telefono.

Sembra che tu abbia un indice corrotto, cosa che non vedo da un po’. La soluzione è provare a ricostruire l’indice e, se fallisce, eliminare o correggere le voci duplicate. Richiede la comprensione di alcune cose su SQL, indici e Discourse.

Puoi cercare “indice corrotto”

Potrebbe essere qualcos’altro. Pensavo che non fosse successo a nessuno con Postgres 13. Da quanto tempo esiste il tuo forum.

Grazie mille, tra l’altro, questo ha aiutato!

1 Mi Piace