Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-7402

'reset master' hangs, waits for signalled COND_xid_list

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • 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.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              serg Sergei Golubchik
              Reporter:
              sbester1 sbester1
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: