A deadlock was detected. When this message occurs at the Debug message level, the deadlock was successfully resolved. When the message occurs at the Notice level, the deadlock was unresolvable.
Deadlocks occur when two transactions are each waiting for the other to release a lock and neither can continue until the other releases the lock. Deadlocks are a normal part of database operations.
MarkLogic Server is designed to automatically detect and resolve deadlocks. When a deadlock is detected, one of the deadlocked transactions is retried, allowing the other to acquire the lock and continue. When this expected behavior occurs, XDMP-DEADLOCK
is written to the log file as a Debug message, to indicate that a deadlock occurred and was resolved.
If the deadlock cannot be resolved by repeated retries, the XDMP-DEADLOCK
message is written to the log file as a Notice message.
If XDMP-DEADLOCK
appears as an infrequent Debug message, no action is required. Deadlocks are a normal part of database operations, and the system successfully resolved the deadlock.
If XDMP-DEADLOCK
appears frequently as a Debug message, you may have a performance issue. Revise your query or content structure to reduce the frequency of the deadlock.
If XDMP-DEADLOCK
appears as a Notice message, the system was unable to resolve the deadlock. Examine the error message for details about the contentious resource. Revise your query or content structure to avoid the deadlock.
Stack Overflow: Get the most useful answers to questions from the MarkLogic community, or ask your own question.