Details
-
Type:
Bug
-
Status: Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 10.0.15
-
Fix Version/s: 10.0.16
-
Component/s: Replication
-
Labels:None
Description
Two threads cause hang, here are their stack traces:
Thread X: Waiting for LOCK_log. mysqld.exe!inline_mysql_mutex_lock Line 693 mysqld.exe!MYSQL_BIN_LOG::write Line 5857 mysqld.exe!THD::binlog_query Line 6288 mysqld.exe!write_bin_log Line 1999 mysqld.exe!Sql_cmd_truncate_table::truncate_table Line 529 mysqld.exe!Sql_cmd_truncate_table::execute Line 560 mysqld.exe!mysql_execute_command Line 5078 mysqld.exe!mysql_parse Line 6407 mysqld.exe!dispatch_command Line 1299 mysqld.exe!do_command Line 996 mysqld.exe!threadpool_process_request Line 233 mysqld.exe!io_completion_callback Line 568 ----- Thread Y: Owns LOCK_xid_list, LOCK_log, LOCK_index Waiting for: mysql_cond_wait(&COND_xid_list, &LOCK_xid_list); mysqld.exe!pthread_cond_timedwait Line 297 mysqld.exe!pthread_cond_wait Line 308 mysqld.exe!inline_mysql_cond_wait Line 1165 mysqld.exe!MYSQL_BIN_LOG::reset_logs Line 3919 mysqld.exe!reset_master Line 3582 mysqld.exe!reload_acl_and_cache Line 329 mysqld.exe!mysql_execute_command Line 4261 mysqld.exe!mysql_parse Line 6407 mysqld.exe!dispatch_command Line 1299 mysqld.exe!do_command Line 996 mysqld.exe!threadpool_process_request Line 233 mysqld.exe!io_completion_callback Line 568
How to repeat:
------------------
I have to make educated guess here, as no time for a perfect testcase.
Hangs within about 5 seconds on my testbed.
If you need exact testcase, let me know and I'll try produce it.
Start server with binlogging and run two threads that do some random XA, start transaction, commit, DML, and reset master.
Gliffy Diagrams
Attachments
Activity
- All
- Comments
- Work Log
- History
- Activity
- Transitions
XA is not needed, the deadlock can happen between two threads executing RESET MASTER: