Continuant la discussion de Tentative de recréer un canal de chat supprimé avec le même nom échoue :
Ce bug a été signalé dans le fil de discussion lié mais semble toujours persister pour moi. Je suis sur la dernière version, j’ai fait un git pull et reconstruit le lanceur hier.
Lorsque j’essaie de nommer un nouveau canal de chat avec un nom de canal de chat précédemment utilisé, il y a une erreur 500 dans la console JS.
Dans les journaux d’erreurs de Discourse, j’obtiens :
Failed to handle exception in exception app middleware : ActiveRecord::RecordNotUnique : PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "index_chat_channels_on_slug"
DETAIL: Key (slug)=(sec-fhir) already exists.
Dans la console Rails, je peux voir que les ChatChannels supprimés ont disparu, mais je soupçonne que quelque part le slug supprimé reste dans un index ou dans une autre dépendance de la base de données et n’a pas été supprimé.
Cette solution de contournement ne fonctionne pas pour moi, lorsque j’essaie de renommer “foo2” en “foo”, j’obtiens la même erreur 500, en raison de la contrainte d’unicité échouée sur le slug.
Je ne suis pas sûr de la manière de supprimer en toute sécurité les slugs (indexés ?) des ChatChannels supprimés, mais je serais prêt à essayer.
Possiblement lié : ce problème qui affecte également les slugs, mais il ne semble pas s’agir du même problème : Attempt to recreate deleted chat channel with same name fails