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

Assertion `rgi->thd != 0 && rgi->thd == rli->sql_driver_thd' failed in Log_event* next_event(rpl_group_info*, ulonglong*)

    XMLWordPrintable

Details

    Description

      RQG run crashes Galera slave node in async master (mariadb server) slave (galera node1) setup

      GALERA_BASE=/home/ramesh/rpl/GAL_MS080425-mariadb-12.0.0-linux-x86_64-dbg
      RPL_BASE=/home/ramesh/rpl/GAL_MS080425-mariadb-12.0.0-linux-x86_64-dbg
      DATADIR=/home/ramesh/rpl
       
      $RPL_BASE/bin/mariadb-admin -uroot --socket=$DATADIR/data/socket.sock shutdown
      $GALERA_BASE/bin/mariadb-admin -uroot --socket=$DATADIR/node2/mysql.sock shutdown
      $GALERA_BASE/bin/mariadb-admin -uroot --socket=$DATADIR/node1/mysql.sock shutdown
       
      rm -Rf $DATADIR/node* $DATADIR/data
       
      $GALERA_BASE/scripts/mariadb-install-db --no-defaults --force --auth-root-authentication-method=normal  --basedir=$GALERA_BASE --datadir=$DATADIR/node1 
      $GALERA_BASE/scripts/mariadb-install-db --no-defaults --force --auth-root-authentication-method=normal  --basedir=$GALERA_BASE --datadir=$DATADIR/node2
      $RPL_BASE/scripts/mariadb-install-db --no-defaults --force --auth-root-authentication-method=normal  --basedir=$RPL_BASE --datadir=$DATADIR/data
       
      $GALERA_BASE/bin/mariadbd --defaults-file=$DATADIR/n1.cnf --wsrep-new-cluster > $DATADIR/node1/node1.err 2>&1 & 
      sleep 4
      $GALERA_BASE/bin/mariadb-admin  -uroot -S$DATADIR/node1/mysql.sock ping
       
      $GALERA_BASE/bin/mariadbd --defaults-file=$DATADIR/n2.cnf > $DATADIR/node2/node2.err 2>&1 &
      sleep 10
       
      $GALERA_BASE/bin/mariadb-admin  -uroot -S$DATADIR/node2/mysql.sock ping
       
      $RPL_BASE/bin/mariadbd --defaults-file=$DATADIR/my.cnf > $DATADIR/data/mysql.err 2>&1 & 
      sleep 5
      $RPL_BASE/bin/mariadb-admin  -uroot -S$DATADIR/data/socket.sock ping
       
      $RPL_BASE/bin/mysql -uroot --socket=$DATADIR/data/socket.sock  <<'EOF'
      set sql_log_bin=0;
      delete from mysql.user where user='';
      flush privileges;
      set sql_log_bin=1;
      create user repl@'%' identified by 'repl';
      grant all on *.* to  repl@'%';
      flush privileges;
      EOF
       
      $GALERA_BASE/bin/mysql -uroot -S$DATADIR/node1/mysql.sock <<'EOF'
      CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT=4040, MASTER_USER='repl', MASTER_PASSWORD='repl', MASTER_USE_GTID=slave_pos; START SLAVE; 
      SHOW SLAVE STATUS \G
      EOF
      

      Run RQG

      perl gendata.pl --dsn=dbi:mysql:host=127.0.0.1:port=4040:user=root:database=test --spec=conf/runtime/concurrency_1.zz
      perl gentest.pl --dsn=dbi:mysql:host=127.0.0.1:port=4040:user=root:database=test --grammar=conf/runtime/concurrency_1.yy --threads=32 --duration=30000 --queries=1000000000 &
      

      Leads to

      CS 12.1.0 040454b5a024c644fa0f0c5a2b60239e7dbb4baf (Debug) Build 20/05/2025

      mariadbd: /test/mtest/MDEV-20065/12.1_dbg/sql/slave.cc:7128: Log_event* next_event(rpl_group_info*, ulonglong*): Assertion `rgi->thd != 0 && rgi->thd == rli->sql_driver_thd' failed.
      250528 16:05:30 [ERROR] /home/ramesh/rpl/GAL_MD200525-mariadb-12.1.0-linux-x86_64-dbg/bin/mariadbd got signal 6 ;
      Sorry, we probably made a mistake, and this is a bug.
       
      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:44
      #1  __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78
      #2  __GI___pthread_kill (threadid=<optimized out>, signo=6) at ./nptl/pthread_kill.c:89
      #3  0x000062d547a3571a in my_write_core (sig=6) at /test/mtest/MDEV-20065/12.1_dbg/mysys/stacktrace.c:424
      #4  0x000062d547105587 in handle_fatal_signal (sig=6) at /test/mtest/MDEV-20065/12.1_dbg/sql/signal_handler.cc:298
      #5  <signal handler called>
      #6  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:44
      #7  __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78
      #8  __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
      #9  0x000075354dc4527e in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
      #10 0x000075354dc288ff in __GI_abort () at ./stdlib/abort.c:79
      #11 0x000075354dc2881b in __assert_fail_base (fmt=0x75354ddd01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x62d547d0b0d8 "rgi->thd != 0 && rgi->thd == rli->sql_driver_thd", 
          file=file@entry=0x62d547d05a00 "/test/mtest/MDEV-20065/12.1_dbg/sql/slave.cc", line=line@entry=7128, function=function@entry=0x62d547d0b110 "Log_event* next_event(rpl_group_info*, ulonglong*)")
          at ./assert/assert.c:96
      #12 0x000075354dc3b517 in __assert_fail (assertion=0x62d547d0b0d8 "rgi->thd != 0 && rgi->thd == rli->sql_driver_thd", file=0x62d547d05a00 "/test/mtest/MDEV-20065/12.1_dbg/sql/slave.cc", line=7128, 
          function=0x62d547d0b110 "Log_event* next_event(rpl_group_info*, ulonglong*)") at ./assert/assert.c:105
      #13 0x000062d546bc747f in next_event (rgi=0x74fecc121ab0, event_size=0x7529c026c9e0) at /test/mtest/MDEV-20065/12.1_dbg/sql/slave.cc:7128
      #14 0x000062d546bc862b in wsrep_peak_event (rgi=0x74fecc121ab0, event_size=0x7529c026c9e0) at /test/mtest/MDEV-20065/12.1_dbg/sql/slave.cc:7614
      #15 0x000062d54749a473 in wsrep_can_run_in_toi (thd=0x74eb84000d58, db=0x74eb8400b4a8 "testdb_N", table=0x74eb8400b4d8 "t1_part2_N", table_list=0x74eb8400b530, create_info=0x7529c026cdb0)
          at /test/mtest/MDEV-20065/12.1_dbg/sql/wsrep_mysqld.cc:2623
      #16 0x000062d54749b247 in wsrep_TOI_begin (thd=0x74eb84000d58, db=0x74eb8400b4a8 "testdb_N", table=0x74eb8400b4d8 "t1_part2_N", table_list=0x74eb8400b530, alter_info=0x7529c026cc30, fk_tables=0x0, 
          create_info=0x7529c026cdb0) at /test/mtest/MDEV-20065/12.1_dbg/sql/wsrep_mysqld.cc:2840
      #17 0x000062d54749c609 in wsrep_to_isolation_begin (thd=0x74eb84000d58, db_=0x74eb8400b4a8 "testdb_N", table_=0x74eb8400b4d8 "t1_part2_N", table_list=0x74eb8400b530, alter_info=0x7529c026cc30, fk_tables=0x0, 
          create_info=0x7529c026cdb0) at /test/mtest/MDEV-20065/12.1_dbg/sql/wsrep_mysqld.cc:3167
      #18 0x000062d546e29ec8 in Sql_cmd_create_table_like::execute (this=0x74eb8400b460, thd=0x74eb84000d58) at /test/mtest/MDEV-20065/12.1_dbg/sql/sql_table.cc:13640
      #19 0x000062d546ceda17 in mysql_execute_command (thd=0x74eb84000d58, is_called_from_prepared_stmt=false) at /test/mtest/MDEV-20065/12.1_dbg/sql/sql_parse.cc:5861
      #20 0x000062d546cf375a in mysql_parse (thd=0x74eb84000d58, 
          rawbuf=0x74fecc15f4c3 "CREATE TABLE IF NOT EXISTS `testdb_N`.`t1_part2_N` (\n  `pk` int(11) NOT NULL,\n  `col_float` float DEFAULT NULL,\n  `col_varchar_64` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_uca1400_ai_ci DEFAU"..., length=379, parser_state=0x7529c026d800) at /test/mtest/MDEV-20065/12.1_dbg/sql/sql_parse.cc:7891
      #21 0x000062d5472be1cd in Query_log_event::do_apply_event (this=0x74fecc15f368, rgi=0x74fecc121ab0, 
          query_arg=0x74fecc15f4c3 "CREATE TABLE IF NOT EXISTS `testdb_N`.`t1_part2_N` (\n  `pk` int(11) NOT NULL,\n  `col_float` float DEFAULT NULL,\n  `col_varchar_64` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_uca1400_ai_ci DEFAU"..., q_len_arg=379) at /test/mtest/MDEV-20065/12.1_dbg/sql/log_event_server.cc:2090
      #22 0x000062d5472bc4c0 in Query_log_event::do_apply_event (this=0x74fecc15f368, rgi=0x74fecc121ab0) at /test/mtest/MDEV-20065/12.1_dbg/sql/log_event_server.cc:1515
      #23 0x000062d5472b2962 in Log_event::apply_event (this=0x74fecc15f368, rgi=0x74fecc121ab0) at /test/mtest/MDEV-20065/12.1_dbg/sql/log_event.cc:3984
      #24 0x000062d546bbd403 in apply_event_and_update_pos_apply (ev=0x74fecc15f368, thd=0x74eb84000d58, rgi=0x74fecc121ab0, reason=0) at /test/mtest/MDEV-20065/12.1_dbg/sql/slave.cc:3626
      #25 0x000062d546bbdab1 in apply_event_and_update_pos_for_parallel (ev=0x74fecc15f368, thd=0x74eb84000d58, rgi=0x74fecc121ab0) at /test/mtest/MDEV-20065/12.1_dbg/sql/slave.cc:3833
      #26 0x000062d546f9cebf in rpt_handle_event (qev=0x74fecc121658, rpt=0x74fecc0291e8) at /test/mtest/MDEV-20065/12.1_dbg/sql/rpl_parallel.cc:66
      #27 0x000062d546fa122e in handle_rpl_parallel_thread (arg=0x74fecc0291e8) at /test/mtest/MDEV-20065/12.1_dbg/sql/rpl_parallel.cc:1578
      #28 0x000075354dc9caa4 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:447
      #29 0x000075354dd29c3c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
      

      Attachments

        1. n2.cnf
          0.9 kB
        2. n1.cnf
          1.0 kB
        3. my.cnf
          0.4 kB
        4. concurrency_1.zz
          2 kB
        5. concurrency_1.yy
          102 kB

        Activity

          People

            sysprg Julius Goryavsky
            ramesh Ramesh Sivaraman
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Git Integration

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