Bug #59683 InnoDB latch deadlock detector/violation debug code is very slow
Submitted: 23 Jan 2011 21:58 Modified: 13 Feb 2012 3:40
Reporter: Sunny Bains Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: InnoDB storage engine Severity:S3 (Non-critical)
Version:5.5+ OS:Any
Assigned to: Sunny Bains CPU Architecture:Any
Tags: debug

[23 Jan 2011 21:58] Sunny Bains
Description:
When UNIV_SYNC_DEBUG is defined InnoDB runs very slowly. The code is very inefficient. In several
places in sync0sync.c it traverses the entire sync_level_t list. This chews up CPU and slows down
every mutex/rw lock acquire/release. This serialisation may also mask some concurrency related
issues. We should make the code faster and roll UNIV_SYNC_DEBUG into UNIV_DEBUG. So that when
UNIV_DEBUG is enabled it also enables UNIV_SYNC_DEBUG, eventually getting rid of UNIV_SYNC_DEBUG
altogether.

How to repeat:
Enable UNIV_SYNC_DEBUG and run mysql-test-run.pl or any other test and note the execution time.

Suggested fix:
Make it faster.
[30 Jan 2011 16:59] Bugs System
Pushed into mysql-trunk 5.6.2 (revid:vasil.dimov@oracle.com-20110130165639-1pr3opz839b98q5j) (version source revid:vasil.dimov@oracle.com-20110130165522-m0o6al0pn5ig9kv3) (merge vers: 5.6.2) (pib:24)
[30 Jan 2011 17:00] Bugs System
Pushed into mysql-5.5 5.5.10 (revid:vasil.dimov@oracle.com-20110130165343-he9art47agq1a3gr) (version source revid:vasil.dimov@oracle.com-20110130165137-5lvzsq9j29j0hp1s) (merge vers: 5.5.10) (pib:24)