Bug #50406 | Deadlock around system variables and the fill_status() function | ||
---|---|---|---|
Submitted: | 18 Jan 2010 10:26 | Modified: | 3 Mar 2010 13:57 |
Reporter: | Philip Stoev | Email Updates: | |
Status: | Duplicate | Impact on me: | |
Category: | MySQL Server: Locking | Severity: | S1 (Critical) |
Version: | next-mr, 6.0-codebase-bugfixing | OS: | Any |
Assigned to: | Assigned Account | CPU Architecture: | Any |
Tags: | pushbuild, rqg_pb2, test failure |
[18 Jan 2010 10:26]
Philip Stoev
[18 Jan 2010 10:28]
Philip Stoev
thread stacks for 50406 except background innodb threads
Attachment: bug50406.threads.txt (text/plain), 23.78 KiB.
[3 Mar 2010 13:24]
Jon Olav Hauglid
This is a deadlock between 1) SET GLOBAL EVENT_SCHEDULER= ON Which holds LOCK_event_metadata (guard PolyLock for EVENT_SCHEDULER) and tries to lock LOCK_global_system_variables during THD:init() 2) SET GLOBAL EVENT_SCHEDULER= OFF Which holds LOCK_global_system_variables and tries to lock LOCK_event_metadata, both during event_scheduler_update() Non-determinstic MTR test case: connect(con2, localhost, root); let $try = 1000; while ($try) { connection con2; --send SET GLOBAL EVENT_SCHEDULER= ON; connection default; SET GLOBAL EVENT_SCHEDULER= OFF; connection con2; --reap dec $try; }
[3 Mar 2010 13:57]
Jon Olav Hauglid
Closing this bug as a duplicate of bug#51160