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

Galera wrong usage of mutex LOCK_thd_kill

    XMLWordPrintable

Details

    • Bug
    • Status: Closed (View Workflow)
    • Critical
    • Resolution: Fixed
    • 10.5
    • 10.5.21
    • Galera
    • None

    Description

      Repeatable at least on 10.5 with:

      • ./mtr galera_sr.galera_sr_ddl_master -repeat=20 --mysqld=-debug-assert-on-error
      • Debug-build

      galera_sr.galera_sr_ddl_master 'innodb'  [ 2 fail ]  Found warnings/errors in server log file!
              Test ended at 2022-05-03 08:20:46
      line
      safe_mutex: Found wrong usage of mutex 'LOCK_thd_kill' and 'LOCK_thd_kill'
      ^ Found warnings in /home/jan/mysql/10.5/mysql-test/var/log/mysqld.1.err
      

      mysys/stacktrace.c:212(my_print_stacktrace)[0x55ee3b8896ee]
      sql/signal_handler.cc:225(handle_fatal_signal)[0x55ee3af17037]
      libc_sigaction.c:0(__restore_rt)[0x7f9fd062e520]
      nptl/pthread_kill.c:44(__pthread_kill_implementation)[0x7f9fd0682a7c]
      posix/raise.c:27(__GI_raise)[0x7f9fd062e476]
      stdlib/abort.c:81(__GI_abort)[0x7f9fd06147f3]
      intl/loadmsgcat.c:1177(_nl_load_domain)[0x7f9fd061471b]
      :0(__GI___assert_fail)[0x7f9fd0625e96]
      mysys/thr_mutex.c:837(print_deadlock_warning)[0x55ee3b88fd22]
      mysys/thr_mutex.c:359(safe_mutex_lock)[0x55ee3b88e66e]
      psi/mysql_thread.h:750(inline_mysql_mutex_lock)[0x55ee3ab08865]
      sql/sql_class.cc:2238(THD::reset_globals())[0x55ee3ab10602]
      sql/wsrep_thd.cc:488(wsrep_reset_threadvars(THD*))[0x55ee3b337227]
      sql/wsrep_server_service.cc:97(wsrep_create_streaming_applier(THD*, char const*))[0x55ee3b343b25]
      sql/wsrep_server_service.cc:124(Wsrep_server_service::streaming_applier_service(wsrep::client_service&))[0x55ee3b343cd6]
      src/server_state.cpp:1146(wsrep::server_state::convert_streaming_client_to_applier(wsrep::client_state*))[0x55ee3ba3ab13]
      src/transaction.cpp:1959(wsrep::transaction::streaming_rollback(std::unique_lock<wsrep::mutex>&))[0x55ee3ba4aa54]
      src/transaction.cpp:1040(wsrep::transaction::bf_abort(std::unique_lock<wsrep::mutex>&, wsrep::seqno))[0x55ee3ba46ea6]
      src/transaction.cpp:1082(wsrep::transaction::total_order_bf_abort(std::unique_lock<wsrep::mutex>&, wsrep::seqno))[0x55ee3ba47161]
      wsrep/client_state.hpp:680(wsrep::client_state::total_order_bf_abort(wsrep::seqno))[0x55ee3b33772d]
      sql/wsrep_thd.cc:390(wsrep_bf_abort(THD*, THD*))[0x55ee3b336dd0]
      sql/service_wsrep.cc:242(wsrep_thd_bf_abort)[0x55ee3b34291c]
      handler/ha_innodb.cc:18737(wsrep_kill_victim(THD*, THD*, trx_t*, char))[0x55ee3b386409]
      handler/ha_innodb.cc:18882(wsrep_abort_transaction(handlerton*, THD*, THD*, char))[0x55ee3b386e13]
      sql/handler.cc:7553(ha_abort_transaction(THD*, THD*, char))[0x55ee3af3217e]
      sql/wsrep_thd.cc:331(wsrep_abort_thd(THD*, THD*, char))[0x55ee3b336896]
      sql/wsrep_mysqld.cc:2706(wsrep_handle_mdl_conflict(MDL_context*, MDL_ticket const*, MDL_key const*))[0x55ee3b3220ca]
      sql/mdl.cc:1782(MDL_lock::can_grant_lock(enum_mdl_type, MDL_context*, bool) const)[0x55ee3ad55dd6]
      sql/mdl.cc:2119(MDL_context::try_acquire_lock_impl(MDL_request*, MDL_ticket**))[0x55ee3ad5688b]
      sql/mdl.cc:2277(MDL_context::acquire_lock(MDL_request*, double))[0x55ee3ad56dd1]
      sql/mdl.cc:2570(MDL_context::upgrade_shared_lock(MDL_ticket*, enum_mdl_type, double))[0x55ee3ad57beb]
      sql/sql_table.cc:8058(mysql_inplace_alter_table(THD*, TABLE_LIST*, TABLE*, TABLE*, Alter_inplace_info*, MDL_request*, Alter_table_ctx*))[0x55ee3ac9a9a8]
      sql/sql_table.cc:10792(mysql_alter_table(THD*, st_mysql_const_lex_string const*, st_mysql_const_lex_string const*, HA_CREATE_INFO*, TABLE_LIST*, Alter_info*, unsigned int, st_order*, bool, bool))[0x55ee3aca31a6]
      sql/sql_alter.cc:543(Sql_cmd_alter_table::execute(THD*))[0x55ee3ad50c1e]
      sql/sql_parse.cc:6072(mysql_execute_command(THD*))[0x55ee3ab9a800]
      sql/sql_parse.cc:8116(mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool))[0x55ee3aba0c38]
      sql/sql_parse.cc:7930(wsrep_mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool))[0x55ee3aba0302]
      sql/sql_parse.cc:1893(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool))[0x55ee3ab8c378]
      sql/sql_parse.cc:1375(do_command(THD*))[0x55ee3ab8ab64]
      sql/sql_connect.cc:1418(do_handle_one_connection(CONNECT*, bool))[0x55ee3ad45ac5]
      sql/sql_connect.cc:1314(handle_one_connection)[0x55ee3ad4577a]
      perfschema/pfs.cc:2203(pfs_spawn_thread)[0x55ee3b28ad1e]
      nptl/pthread_create.c:442(start_thread)[0x7f9fd0680b43]
      x86_64/clone3.S:83(__clone3)[0x7f9fd0712a00]
       
      Trying to get some variables.
      Some pointers may be invalid and cause the dump to abort.
      Query (0x7f9f70015390): ALTER TABLE t1 ADD COLUMN f2 INTEGER
       
      Connection ID (thread ID): 17
      Status: NOT_KILLED
      

      Attachments

        Issue Links

          Activity

            People

              janlindstrom Jan Lindström
              jplindst Jan Lindström (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.