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

Server crash when SET GLOBAL rpl_semi_sync_master_enabled = OFF

Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Fixed
    • 5.5.24
    • 5.5.25
    • None
    • None

    Description

      Running below test case by Elena randomly causes a server crash (ie. it needs
      to run a few times to cause the crash, ./mtr --repeat=100).

      Bug is also present in MySQL 5.5. See also
      http://bugs.mysql.com/bug.php?id=50160.

      Thread 1 (Thread 0x7f449d6f0700 (LWP 16616)):
      #0  0x00007f44a92ba4ec in __pthread_kill (threadid=<optimized out>, signo=<optimized out>) at ../nptl/sysdeps/unix/sysv/linux/pthread_kill.c:63
      #1  0x0000000000cb000b in my_write_core (sig=11) at /home/knielsen/my/5.5/mariadb-5.5/mysys/stacktrace.c:457
      #2  0x00000000007d1adc in handle_fatal_signal (sig=11) at /home/knielsen/my/5.5/mariadb-5.5/sql/signal_handler.cc:279
      #3  <signal handler called>
      #4  0x00007f449d4a4328 in Trace::function_enter (this=0x0, func_name=0x7f449d4a558a "ActiveTranx::is_tranx_end_pos") at /home/knielsen/my/5.5/mariadb-5.5/plugin/semisync/semisync.h:50
      #5  0x00007f449d4a2216 in ActiveTranx::is_tranx_end_pos (this=0x0, log_file_name=0x38215b8 "master-bin.000001", log_file_pos=576) at /home/knielsen/my/5.5/mariadb-5.5/plugin/semisync/semisync_master.cc:198
      #6  0x00007f449d4a33a8 in ReplSemiSyncMaster::commitTrx (this=0x7f449d6a8160, trx_wait_binlog_name=0x38215b8 "master-bin.000001", trx_wait_binlog_pos=576) at /home/knielsen/my/5.5/mariadb-5.5/plugin/semisync/semisync_master.cc:746
      #7  0x00007f449d4a4a94 in repl_semi_report_commit (param=0x7f449d6eebd0) at /home/knielsen/my/5.5/mariadb-5.5/plugin/semisync/semisync_master_plugin.cc:59
      #8  0x0000000000725abc in Trans_delegate::after_commit (this=0x14d8960, thd=0x3754710, all=false) at /home/knielsen/my/5.5/mariadb-5.5/sql/rpl_handler.cc:243
      #9  0x00000000007d4366 in ha_commit_trans (thd=0x3754710, all=false) at /home/knielsen/my/5.5/mariadb-5.5/sql/handler.cc:1306
      #10 0x00000000007314eb in trans_commit_stmt (thd=0x3754710) at /home/knielsen/my/5.5/mariadb-5.5/sql/transaction.cc:299
      #11 0x0000000000630fb9 in mysql_execute_command (thd=0x3754710) at /home/knielsen/my/5.5/mariadb-5.5/sql/sql_parse.cc:4514
      #12 0x0000000000633c96 in mysql_parse (thd=0x3754710, rawbuf=0x37f6118 "INSERT INTO t1 SELECT * FROM t1", length=31, parser_state=0x7f449d6ef610) at /home/knielsen/my/5.5/mariadb-5.5/sql/sql_parse.cc:5736
      #13 0x0000000000627e50 in dispatch_command (command=COM_QUERY, thd=0x3754710, packet=0x3758141 "INSERT INTO t1 SELECT * FROM t1", packet_length=31) at /home/knielsen/my/5.5/mariadb-5.5/sql/sql_parse.cc:1055

      --source include/have_binlog_format_mixed_or_statement.inc
      --source include/master-slave.inc
      CREATE TABLE t1 (a INT) ENGINE=MyISAM;
      INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so';
      SET GLOBAL rpl_semi_sync_master_enabled = ON;
      --connection master1
      --send
      INSERT INTO t1 SELECT * FROM t1;
      --connection master
      --sync_slave_with_master
      --connection master
      SET GLOBAL rpl_semi_sync_master_enabled = OFF;
      --connection master1
      --reap
       
      connection master;
      DROP TABLE t1;
       
      disable_warnings;
      UNINSTALL PLUGIN rpl_semi_sync_master;
      enable_warnings;
       
      --source include/rpl_end.inc

      Attachments

        Activity

          knielsen Kristian Nielsen created issue -
          knielsen Kristian Nielsen made changes -
          Field Original Value New Value
          Status Open [ 1 ] In Progress [ 3 ]
          serg Sergei Golubchik made changes -
          Fix Version/s 5.5.26 [ 11100 ]
          Fix Version/s 5.5.25 [ 10901 ]

          Fix + testcase pushed into lp:maria/5.5

          knielsen Kristian Nielsen added a comment - Fix + testcase pushed into lp:maria/5.5
          knielsen Kristian Nielsen made changes -
          Resolution Fixed [ 1 ]
          Status In Progress [ 3 ] Closed [ 6 ]
          elenst Elena Stepanova added a comment - - edited

          I'm now getting the following crash with the same test case (on revno 3452):

          RelWithDebInfo:

          #2 <signal handler called>
          #3 0x00007fc621d8dd71 in function_enter (func_name=0x7fc621d90b36 "ActiveTranx::is_tranx_end_pos", this=0x0) at plugin/semisync/semisync.h:50
          #4 ActiveTranx::is_tranx_end_pos (this=0x0, log_file_name=0x3967258 "master-bin.000001", log_file_pos=576) at plugin/semisync/semisync_master.cc:198
          #5 0x00007fc621d8eadf in ReplSemiSyncMaster::commitTrx (this=0x7fc621f937e0, trx_wait_binlog_name=0x3967258 "master-bin.000001", trx_wait_binlog_pos=576) at plugin/semisync/semisync_master.cc:746
          #6 0x0000000000630849 in Trans_delegate::after_commit (this=0x10a6de0, thd=<optimized out>, all=<optimized out>) at sql/rpl_handler.cc:243
          #7 0x000000000069a431 in ha_commit_trans (thd=0x393ccc0, all=false) at sql/handler.cc:1305
          #8 0x0000000000638c4a in trans_commit_stmt (thd=0x393ccc0) at sql/transaction.cc:299
          #9 0x000000000058a053 in mysql_execute_command (thd=0x393ccc0) at sql/sql_parse.cc:4514
          #10 0x0000000000590b19 in mysql_parse (parser_state=0x7fc621fda460, thd=0x393ccc0, rawbuf=<optimized out>, length=<optimized out>) at sql/sql_parse.cc:5736
          #11 mysql_parse (thd=0x393ccc0, rawbuf=<optimized out>, length=31, parser_state=0x7fc621fda460) at sql/sql_parse.cc:5661
          #12 0x0000000000591ef8 in dispatch_command (command=COM_QUERY, thd=0x393ccc0, packet=<optimized out>, packet_length=<optimized out>) at sql/sql_parse.cc:1055
          #13 0x000000000062d0b4 in do_handle_one_connection (thd_arg=<optimized out>) at sql/sql_connect.cc:1253
          #14 0x000000000062d14a in handle_one_connection (arg=0x393ccc0) at sql/sql_connect.cc:1168
          #15 0x0000000000954e76 in pfs_spawn_thread (arg=0x38d7d50) at storage/perfschema/pfs.cc:1015
          #16 0x00007fc62d79fefc in start_thread (arg=0x7fc621fdb700) at pthread_create.c:304
          #17 0x00007fc62cb1259d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
          #18 0x0000000000000000 in ?? ()

          Debug:

          #3 <signal handler called>
          #4 0x00007f8dc4c30046 in Trace::function_enter (this=0x0, func_name=0x7f8dc4c312a2 "ActiveTranx::is_tranx_end_pos") at plugin/semisync/semisync.h:50
          #5 0x00007f8dc4c2de36 in ActiveTranx::is_tranx_end_pos (this=0x0, log_file_name=0x31e2828 "master-bin.000001", log_file_pos=576) at plugin/semisync/semisync_master.cc:198
          #6 0x00007f8dc4c2eff5 in ReplSemiSyncMaster::commitTrx (this=0x7f8dc4e34860, trx_wait_binlog_name=0x31e2828 "master-bin.000001", trx_wait_binlog_pos=576) at plugin/semisync/semisync_master.cc:746
          #7 0x00007f8dc4c307b0 in repl_semi_report_commit (param=0x7f8dc4ec2a60) at plugin/semisync/semisync_master_plugin.cc:59
          #8 0x000000000070fe00 in Trans_delegate::after_commit (this=0x14e0360, thd=0x31acf80, all=false) at sql/rpl_handler.cc:243
          #9 0x00000000007c1d63 in ha_commit_trans (thd=0x31acf80, all=false) at sql/handler.cc:1305
          #10 0x000000000071bd43 in trans_commit_stmt (thd=0x31acf80) at sql/transaction.cc:299
          #11 0x0000000000613dc2 in mysql_execute_command (thd=0x31acf80) at sql/sql_parse.cc:4514
          #12 0x0000000000616bfd in mysql_parse (thd=0x31acf80, rawbuf=0x31d16a8 "INSERT INTO t1 SELECT * FROM t1", length=31, parser_state=0x7f8dc4ec3500) at sql/sql_parse.cc:5736
          #13 0x000000000060a473 in dispatch_command (command=COM_QUERY, thd=0x31acf80, packet=0x31c9591 "INSERT INTO t1 SELECT * FROM t1", packet_length=31) at sql/sql_parse.cc:1055
          #14 0x000000000060972a in do_command (thd=0x31acf80) at sql/sql_parse.cc:794
          #15 0x000000000070a9ef in do_handle_one_connection (thd_arg=0x31acf80) at sql/sql_connect.cc:1253
          #16 0x000000000070a3da in handle_one_connection (arg=0x31acf80) at sql/sql_connect.cc:1168
          #17 0x0000000000c0116f in pfs_spawn_thread (arg=0x31567e0) at storage/perfschema/pfs.cc:1015
          #18 0x00007f8dd0640efc in start_thread (arg=0x7f8dc4ec4700) at pthread_create.c:304
          #19 0x00007f8dcf9b359d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112

          elenst Elena Stepanova added a comment - - edited I'm now getting the following crash with the same test case (on revno 3452): RelWithDebInfo: #2 <signal handler called> #3 0x00007fc621d8dd71 in function_enter (func_name=0x7fc621d90b36 "ActiveTranx::is_tranx_end_pos", this=0x0) at plugin/semisync/semisync.h:50 #4 ActiveTranx::is_tranx_end_pos (this=0x0, log_file_name=0x3967258 "master-bin.000001", log_file_pos=576) at plugin/semisync/semisync_master.cc:198 #5 0x00007fc621d8eadf in ReplSemiSyncMaster::commitTrx (this=0x7fc621f937e0, trx_wait_binlog_name=0x3967258 "master-bin.000001", trx_wait_binlog_pos=576) at plugin/semisync/semisync_master.cc:746 #6 0x0000000000630849 in Trans_delegate::after_commit (this=0x10a6de0, thd=<optimized out>, all=<optimized out>) at sql/rpl_handler.cc:243 #7 0x000000000069a431 in ha_commit_trans (thd=0x393ccc0, all=false) at sql/handler.cc:1305 #8 0x0000000000638c4a in trans_commit_stmt (thd=0x393ccc0) at sql/transaction.cc:299 #9 0x000000000058a053 in mysql_execute_command (thd=0x393ccc0) at sql/sql_parse.cc:4514 #10 0x0000000000590b19 in mysql_parse (parser_state=0x7fc621fda460, thd=0x393ccc0, rawbuf=<optimized out>, length=<optimized out>) at sql/sql_parse.cc:5736 #11 mysql_parse (thd=0x393ccc0, rawbuf=<optimized out>, length=31, parser_state=0x7fc621fda460) at sql/sql_parse.cc:5661 #12 0x0000000000591ef8 in dispatch_command (command=COM_QUERY, thd=0x393ccc0, packet=<optimized out>, packet_length=<optimized out>) at sql/sql_parse.cc:1055 #13 0x000000000062d0b4 in do_handle_one_connection (thd_arg=<optimized out>) at sql/sql_connect.cc:1253 #14 0x000000000062d14a in handle_one_connection (arg=0x393ccc0) at sql/sql_connect.cc:1168 #15 0x0000000000954e76 in pfs_spawn_thread (arg=0x38d7d50) at storage/perfschema/pfs.cc:1015 #16 0x00007fc62d79fefc in start_thread (arg=0x7fc621fdb700) at pthread_create.c:304 #17 0x00007fc62cb1259d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #18 0x0000000000000000 in ?? () Debug: #3 <signal handler called> #4 0x00007f8dc4c30046 in Trace::function_enter (this=0x0, func_name=0x7f8dc4c312a2 "ActiveTranx::is_tranx_end_pos") at plugin/semisync/semisync.h:50 #5 0x00007f8dc4c2de36 in ActiveTranx::is_tranx_end_pos (this=0x0, log_file_name=0x31e2828 "master-bin.000001", log_file_pos=576) at plugin/semisync/semisync_master.cc:198 #6 0x00007f8dc4c2eff5 in ReplSemiSyncMaster::commitTrx (this=0x7f8dc4e34860, trx_wait_binlog_name=0x31e2828 "master-bin.000001", trx_wait_binlog_pos=576) at plugin/semisync/semisync_master.cc:746 #7 0x00007f8dc4c307b0 in repl_semi_report_commit (param=0x7f8dc4ec2a60) at plugin/semisync/semisync_master_plugin.cc:59 #8 0x000000000070fe00 in Trans_delegate::after_commit (this=0x14e0360, thd=0x31acf80, all=false) at sql/rpl_handler.cc:243 #9 0x00000000007c1d63 in ha_commit_trans (thd=0x31acf80, all=false) at sql/handler.cc:1305 #10 0x000000000071bd43 in trans_commit_stmt (thd=0x31acf80) at sql/transaction.cc:299 #11 0x0000000000613dc2 in mysql_execute_command (thd=0x31acf80) at sql/sql_parse.cc:4514 #12 0x0000000000616bfd in mysql_parse (thd=0x31acf80, rawbuf=0x31d16a8 "INSERT INTO t1 SELECT * FROM t1", length=31, parser_state=0x7f8dc4ec3500) at sql/sql_parse.cc:5736 #13 0x000000000060a473 in dispatch_command (command=COM_QUERY, thd=0x31acf80, packet=0x31c9591 "INSERT INTO t1 SELECT * FROM t1", packet_length=31) at sql/sql_parse.cc:1055 #14 0x000000000060972a in do_command (thd=0x31acf80) at sql/sql_parse.cc:794 #15 0x000000000070a9ef in do_handle_one_connection (thd_arg=0x31acf80) at sql/sql_connect.cc:1253 #16 0x000000000070a3da in handle_one_connection (arg=0x31acf80) at sql/sql_connect.cc:1168 #17 0x0000000000c0116f in pfs_spawn_thread (arg=0x31567e0) at storage/perfschema/pfs.cc:1015 #18 0x00007f8dd0640efc in start_thread (arg=0x7f8dc4ec4700) at pthread_create.c:304 #19 0x00007f8dcf9b359d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
          elenst Elena Stepanova made changes -
          Resolution Fixed [ 1 ]
          Status Closed [ 6 ] Reopened [ 4 ]

          I fixed anoter similar case that could cause the crash.
          Pushed to lp:maria/5.5 (rev 3454), hopefully that's the last of them.

          knielsen Kristian Nielsen added a comment - I fixed anoter similar case that could cause the crash. Pushed to lp:maria/5.5 (rev 3454), hopefully that's the last of them.
          knielsen Kristian Nielsen made changes -
          Resolution Fixed [ 1 ]
          Status Reopened [ 4 ] Closed [ 6 ]
          knielsen Kristian Nielsen made changes -
          Resolution Fixed [ 1 ]
          Status Closed [ 6 ] Reopened [ 4 ]

          Fixed in 5.5.25

          knielsen Kristian Nielsen added a comment - Fixed in 5.5.25
          knielsen Kristian Nielsen made changes -
          Fix Version/s 5.5.25 [ 10901 ]
          Fix Version/s 5.5.26 [ 11100 ]
          knielsen Kristian Nielsen made changes -
          Resolution Fixed [ 1 ]
          Status Reopened [ 4 ] Closed [ 6 ]
          serg Sergei Golubchik made changes -
          Workflow defaullt [ 12307 ] MariaDB v2 [ 45217 ]
          ratzpo Rasmus Johansson (Inactive) made changes -
          Workflow MariaDB v2 [ 45217 ] MariaDB v3 [ 62080 ]
          serg Sergei Golubchik made changes -
          Workflow MariaDB v3 [ 62080 ] MariaDB v4 [ 144859 ]

          People

            knielsen Kristian Nielsen
            knielsen Kristian Nielsen
            Votes:
            0 Vote for this issue
            Watchers:
            2 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.