DBAtlas · Атлас эксплуатации баз данных

112: WriteConflict (код ошибки 112)

MongoDB

Что это значит?

Конфликт записи, возникающий, когда две параллельные операции пытаются изменить один и тот же документ (документы). Из-за оптимистичного управления параллелизмом WiredTiger откатывает одну из операций.

Почему возникает?

Высокопараллельная запись в одни и те же документы, конфликтующие обновления во время длительных транзакций, сильная конкуренция за горячий документ.

Как исправить

Повторите операцию; WriteConflict обычно временная ошибка и устраняется повтором (она помечена TransientTransactionError). Делайте транзакции короткими и сокращайте число затрагиваемых документов. Пересмотрите модель данных, чтобы снизить конкуренцию за один документ. Реализуйте в приложении повторы с экспоненциальной задержкой.

Открыть в DBAtlas →

Ещё по этой СУБД