Bug #1784 ability to log details on all deadlocks
Submitted: 9 Nov 2003 10:44 Modified: 25 Apr 2013 9:28
Reporter: marc slemko Email Updates:
Status: Closed Impact on me:
Category:MySQL Server: InnoDB storage engine Severity:S4 (Feature request)
Version:4.0.16 OS:Any
Assigned to: Vasil Dimov CPU Architecture:Any
Triage: Triaged: D5 (Feature request) / R2 (Low) / E2 (Low)

[9 Nov 2003 10:44] marc slemko
Right now, SHOW INNODB STATUS shows details of the last deadlock that occurred.  It would be extremely useful to have a config option that enabled logging this information about every deadlock that occurs into the mysql.err log (well, stdout I guess).

It would be a huge benefit to be able to characterize why each particular deadlock is happening so effort can be concentrated on avoiding the most frequent ones or the ones with the largest transactions.

How to repeat:

Suggested fix:
[27 Nov 2005 11:43] Valeriy Kravchuk
Thank you for a resonable feature request. 

I agree that it will be useful to get information about all deadlocks happened in the error log. Other RDBMSes (Oracle and IBM Informix, at least) write it to the logs.
[13 Dec 2006 21:46] Valeriy Kravchuk
Bug #17572 was marked as a duplicate of this one.
[13 Dec 2010 13:09] Vasil Dimov
A patch has been committed in

revision-id: vasil.dimov@oracle.com-20101213120811-k2ldtnao2t6zrxfn
committer: Vasil Dimov <vasil.dimov@oracle.com>
branch nick: mysql-trunk-innodb
timestamp: Mon 2010-12-13 14:08:11 +0200
  Implement WL#5674 InnoDB: report all deadlocks (Bug#1784)
[13 Dec 2010 13:12] Vasil Dimov

Attachment: bug1784.diff (application/octet-stream, text), 9.56 KiB.

[22 Dec 2010 21:30] Bugs System
Pushed into mysql-trunk 5.6.1 (revid:alexander.nozdrin@oracle.com-20101222212842-y0t3ibtd32wd9qaw) (version source revid:alexander.nozdrin@oracle.com-20101222212842-y0t3ibtd32wd9qaw) (merge vers: 5.6.1) (pib:24)
[12 Jan 2011 19:00] Valeriy Kravchuk
Bug #59455 was marked as a duplicate of this one.
[7 Oct 2011 9:39] Cyril SCETBON
I think it should be written too in the general log when it's enabled as a deadlock rollback or something like that. Today we can't guess by reading the general log what could have been committed in a deadlock case.
[25 Apr 2013 9:28] Vasil Dimov
Implemented, see http://dev.mysql.com/doc/refman/5.6/en/innodb-parameters.html#sysvar_innodb_print_all_dead...