Closed mguerin-actinvision closed 10 months ago
Le plus probable c'est que 2 personnes aient ouvert exactement au même moment la réunion pour la 1ère fois, et comme le front est en charge de crée les étapes, les 2 ont créé les étapes en même temps.
Il n'y a pas de contrainte d'unicité sur le couple (meetingId, stepConfigId)
dans la table meeting_step
, mais je ne vois pas ce qui empêcherait d'en mettre une.
J'ai ajouté une clé d'unicité à la table pour éviter le problème. Il est possible qu'il reste une double requête côté front, mais je n'ai pas réussi à reproduire le problème.
Avant d'appliquer la dernière migration, il faut supprimer les duplicats de la table meeting_step
.
On peut les supprimer avec une requête comme ça :
WITH DuplicateRows AS (
SELECT "id",
ROW_NUMBER() OVER (PARTITION BY "meetingId", "stepConfigId" ORDER BY "id") AS rn
FROM "meeting_step"
)
DELETE FROM "meeting_step"
WHERE "id" IN (
SELECT "id" FROM DuplicateRows WHERE rn > 1
);
⚠️ Faites un backup avant et vérifiez que la requête vous convient. Il se peut que ce ne soit pas les duplicats souhaités qui soient supprimés.
Bonjour, Nous avons déployé rolebase sur nhost, nous sommes en train de faire les premières réunions en live. Dans l'ensemble, tout se déroule bien, mais nous avons remarqué un problème.
Les sujets liés à la réunion avaient disparu de l'affichage, je me suis aperçu que certaines étapes de réunions avait été dupliqués.
Lorsque j'exécute la requête suivante dans Hasura, j'obtiens des lignes en résultat (ce qui signifie que certaines de nos réunions ont plusieurs étapes partageant le même "stepConfigId") :
SELECT * FROM (SELECT ms."stepConfigId", ms.type, count(*) as "recordsNumber", ms."meetingId" FROM meeting_step as ms GROUP BY ms."stepConfigId", ms."meetingId", ms.type) as tmp LEFT JOIN meeting as m on m.id = tmp."meetingId" WHERE tmp."recordsNumber" > 1
Avez-vous également obtenu le même résultat ? Je n'ai pas réussi à reproduire le problème, mais il semble exister dans deux de nos réunions. Auriez-vous des idées sur la façon dont ce résultat pourrait se produire ?
Merci à l'avance pour votre aide. N'hésitez pas à me demander des informations supplémentaires si nécessaire.