Does MySQL always detects the deadlocks automatically? Or the are some situations when MySQL just can't figure out that it's dealing with deadlock?
According to the docs, MyISAM, a table-level locking storage engine, is deadlock-free.
InnoDB has deadlock detection.
NDB detection is implemented through a timeout. You can set the TransactionDeadlockDetectionTimeout parameter for transactions.
So, whether its with roll backs or timeouts, the deadlock will eventually recover.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With