Bug #38254 | Falcon dead lock for sysbench read-only test with the newest lock implementation | ||
---|---|---|---|
Submitted: | 21 Jul 2008 9:31 | Modified: | 16 Mar 2009 22:46 |
Reporter: | kai xiang | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: Falcon storage engine | Severity: | S2 (Serious) |
Version: | mysql-6.0-falcon bzr | OS: | Linux (64-bit) |
Assigned to: | Kelly Long | CPU Architecture: | Any |
Tags: | F_PERFORMANCE |
[21 Jul 2008 9:31]
kai xiang
[21 Jul 2008 16:51]
Kevin Lewis
Kelly, this problem is preventing us from turning on this new performance enhancement, which Intel has shown really works. Intel indicates that the enhancement increases SyncTest performance 2x or 3x depending on the client load and processor. SyncTest is nothing but Read-Read concurrency on a single SyncObject, but since locking SyncObjects can be as much as 30% of a DBT2 run, this improvement will give us measurable improvement... if we can solve this deadlock.
[21 Jul 2008 22:34]
Hakan Küçükyılmaz
I tried FAST_SHARED enabled with revno: 2758 committer: Hakan Kuecuekyilmaz <hakan@mysql.com> branch nick: mysql-6.0-falcon-to-merge timestamp: Mon 2008-07-21 11:56:25 +0200 === modified file 'storage/falcon/SyncObject.cpp' --- storage/falcon/SyncObject.cpp 2008-07-08 16:01:41 +0000 +++ storage/falcon/SyncObject.cpp 2008-07-21 22:37:18 +0000 @@ -47,7 +47,7 @@ #include "Stream.h" #include "InfoTable.h" -//#define FAST_SHARED +#define FAST_SHARED //#define STALL_THRESHOLD 1000 #define BACKOFF \ After compiling with BUILD/compile-amd64-max-no-ndb mysqld does not even start. I will attach a full backtrace of all threads.
[21 Jul 2008 22:37]
Hakan Küçükyılmaz
thread apply all backtrace full
Attachment: bug_38254_thread_apply_all_bt_full.txt (text/plain), 22.67 KiB.
[16 Mar 2009 22:46]
Kevin Lewis
WL#4611 tracks the implementation of the FAST_SHARED method of implementing SyncObjects. This task is now complete, without the deadlock mentioned in this bug. And it is being tested in the Performance tree. This code was initially added to the Falcon tree but never turned on or used. So the deadlock never actually occurred in a released Falcon engine.