112: WriteConflict (error code 112)
MongoDBO que significa?
Um conflito de escrita que ocorre quando duas operações concorrentes tentam modificar o(s) mesmo(s) documento(s). Por causa do controle de concorrência otimista, o WiredTiger faz rollback de uma das operações.
Por que acontece?
Escritas altamente concorrentes nos mesmos documentos, atualizações conflitantes durante transações de longa duração, contenção intensa em um documento quente.
Como resolver
Repita a operação; o WriteConflict geralmente é transitório e se resolve com uma nova tentativa (ele é rotulado TransientTransactionError). Mantenha as transações curtas e reduza o número de documentos afetados. Revise o modelo de dados para reduzir a contenção no mesmo documento. Implemente retries com exponential backoff na aplicação.