Informations utilisateur supprimées s'affichent dans l'approbation de nouveaux utilisateurs

Lors de la configuration d’un nouveau Discourse avec l’option « approuver les utilisateurs » activée, j’ai constaté qu’après avoir créé puis supprimé un utilisateur de test, le même identifiant utilisateur était réutilisé lorsqu’un véritable utilisateur s’inscrivait. Cependant, comme une ligne subsistait dans la table public.reviewables avec le même target_id, aucune nouvelle ligne n’était créée pour ce deuxième utilisateur. L’interface utilisateur affichait alors le nom d’utilisateur désormais supprimé lors de la demande d’approbation du nouvel utilisateur.

2 « J'aime »

Comment avez-vous supprimé l’utilisateur de test initial ? Était-ce via l’interface utilisateur de Discourse ou depuis la console Rails ?

2 « J'aime »

Toute la gestion des utilisateurs a été effectuée dans l’interface utilisateur

Je n’ai pas réussi à reproduire le problème et, malheureusement, je n’ai pas enregistré scrupuleusement toutes les étapes que j’ai suivies, car je découvrais simplement le fonctionnement de Discourse. Je dispose toutefois des enregistrements actuels des tables users et reviewables, qui corroborent partiellement ce que j’ai observé, au cas où cela contiendrait un indice, ainsi que des journaux nginx et rails.

2 « J'aime »

Nous utilisons des séquences PostgreSQL pour les identifiants d’utilisateurs, et ils augmentent toujours. Même si vous annulez une transaction, la séquence continue d’augmenter.

Il faudrait intervenir directement sur la base de données pour rompre cette contrainte (par exemple, réinitialiser la séquence d’identifiants de la table utilisateurs).

Je clos ce ticket en attendant un scénario de reproduction. Si vous parvenez à reproduire ce problème, veuillez signaler pour le rouvrir.

1 « J'aime »