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

Assertion `!writer.checksum_len || writer.remains == 0' failed

    XMLWordPrintable

Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Fixed
    • 10.2.2
    • 5.5.57
    • Replication
    • None
    • 10.1.24

    Description

      How to repeat:

      perl mtr rpl.rpl_crash --mysqld=--binlog-annotate-row-events=1
      

      Test case: rpl/rpl_crash.test

      --source include/have_innodb.inc
      --source include/master-slave.inc
      --source include/not_embedded.inc
      --source include/not_windows.inc
      --source include/have_binlog_format_row.inc
       
      ########################################################################################
      call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
       
      let $old_max_binlog_cache_size= query_get_value(SHOW VARIABLES LIKE "max_binlog_cache_size", Value, 1);
      let $old_binlog_cache_size= query_get_value(SHOW VARIABLES LIKE "binlog_cache_size", Value, 1);
      let $old_max_binlog_stmt_cache_size= query_get_value(SHOW VARIABLES LIKE "max_binlog_stmt_cache_size", Value, 1);
      let $old_binlog_stmt_cache_size= query_get_value(SHOW VARIABLES LIKE "binlog_stmt_cache_size", Value, 1);
       
      SET GLOBAL max_binlog_cache_size = 4096;
      SET GLOBAL binlog_cache_size = 4096;
      SET GLOBAL max_binlog_stmt_cache_size = 4096;
      SET GLOBAL binlog_stmt_cache_size = 4096;
      disconnect master;
      connect (master,127.0.0.1,root,,test,$MASTER_MYPORT,);
       
      CREATE TABLE t1(a INT PRIMARY KEY, data VARCHAR(30000)) ENGINE=MYISAM;
       
      let $data = `select concat('"', repeat('a',2000), '"')`;
       
      connection master;
       
      --disable_query_log
      --error ER_TRANS_CACHE_FULL, ER_STMT_CACHE_FULL, ER_ERROR_ON_WRITE
      eval INSERT INTO t1 (a, data) VALUES (2,
             CONCAT($data, $data, $data, $data, $data, $data));
      --enable_query_log
       
      # Incident event
      # 1590=ER_SLAVE_INCIDENT
      --let $slave_sql_errno= 1590
      --source include/wait_for_slave_sql_error_and_skip.inc
       
      connection master;
       
      --replace_result $old_max_binlog_cache_size ORIGINAL_VALUE
      --eval SET GLOBAL max_binlog_cache_size= $old_max_binlog_cache_size
      --replace_result $old_binlog_cache_size ORIGINAL_VALUE
      --eval SET GLOBAL binlog_cache_size= $old_binlog_cache_size
      --replace_result $old_max_binlog_stmt_cache_size ORIGINAL_VALUE
      --eval SET GLOBAL max_binlog_stmt_cache_size= $old_max_binlog_stmt_cache_size
      --replace_result $old_binlog_stmt_cache_size ORIGINAL_VALUE
      --eval SET GLOBAL binlog_stmt_cache_size= $old_binlog_stmt_cache_size
       
      DROP TABLE t1;
       
      --source include/rpl_end.inc
      

      Stack trace:

      #4  0x00007f778c423418 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
      #5  0x00007f778c42501a in __GI_abort () at abort.c:89
      #6  0x00007f778c41bbd7 in __assert_fail_base (fmt=<optimized out>, assertion=assertion@entry=0x564c56928ce0 "!writer.checksum_len || writer.remains == 0", file=file@entry=0x564c569262c0 "/home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/log.cc", line=line@entry=6871, function=function@entry=0x564c5692b600 <MYSQL_BIN_LOG::write_cache(THD*, st_io_cache*)::__PRETTY_FUNCTION__> "int MYSQL_BIN_LOG::write_cache(THD*, IO_CACHE*)") at assert.c:92
      #7  0x00007f778c41bc82 in __GI___assert_fail (assertion=0x564c56928ce0 "!writer.checksum_len || writer.remains == 0", file=0x564c569262c0 "/home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/log.cc", line=6871, function=0x564c5692b600 <MYSQL_BIN_LOG::write_cache(THD*, st_io_cache*)::__PRETTY_FUNCTION__> "int MYSQL_BIN_LOG::write_cache(THD*, IO_CACHE*)") at assert.c:101
      #8  0x0000564c560fa117 in MYSQL_BIN_LOG::write_cache (this=0x564c572c77e0 <mysql_bin_log>, thd=0x7f7775d79070, cache=0x7f7775d54870) at /home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/log.cc:6871
      #9  0x0000564c560fc59c in MYSQL_BIN_LOG::write_transaction_or_stmt (this=0x564c572c77e0 <mysql_bin_log>, entry=0x7f778c30caa0, commit_id=0) at /home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/log.cc:7852
      #10 0x0000564c560fb9f6 in MYSQL_BIN_LOG::trx_group_commit_leader (this=0x564c572c77e0 <mysql_bin_log>, leader=0x7f778c30caa0) at /home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/log.cc:7605
      #11 0x0000564c560fb337 in MYSQL_BIN_LOG::write_transaction_to_binlog_events (this=0x564c572c77e0 <mysql_bin_log>, entry=0x7f778c30caa0) at /home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/log.cc:7406
      #12 0x0000564c560fa9a3 in MYSQL_BIN_LOG::write_transaction_to_binlog (this=0x564c572c77e0 <mysql_bin_log>, thd=0x7f7775d79070, cache_mngr=0x7f7775d54870, end_ev=0x7f778c30cc60, all=false, using_stmt_cache=true, using_trx_cache=false) at /home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/log.cc:7080
      #13 0x0000564c560ec668 in binlog_flush_cache (thd=0x7f7775d79070, cache_mngr=0x7f7775d54870, end_ev=0x7f778c30cc60, all=false, using_stmt=true, using_trx=false) at /home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/log.cc:1754
      #14 0x0000564c560ec8ab in binlog_commit_flush_stmt_cache (thd=0x7f7775d79070, all=false, cache_mngr=0x7f7775d54870) at /home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/log.cc:1806
      #15 0x0000564c560ed371 in binlog_rollback (hton=0x7f778b865f70, thd=0x7f7775d79070, all=false) at /home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/log.cc:2071
      #16 0x0000564c55ff91d2 in ha_rollback_trans (thd=0x7f7775d79070, all=false) at /home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/handler.cc:1658
      #17 0x0000564c55ee6db8 in trans_rollback_stmt (thd=0x7f7775d79070) at /home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/transaction.cc:566
      #18 0x0000564c55d9a48a in mysql_execute_command (thd=0x7f7775d79070) at /home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/sql_parse.cc:6163
      #19 0x0000564c55d9eb75 in mysql_parse (thd=0x7f7775d79070, rawbuf=0x7f7775dc4088 "INSERT INTO t1 (a, data) VALUES (2,\nCONCAT(\"", 'a' <repeats 156 times>..., length=12067, parser_state=0x7f778c30ddd0, is_com_multi=false, is_next_command=false) at /home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/sql_parse.cc:7796
      #20 0x0000564c55d8c62a in dispatch_command (command=COM_QUERY, thd=0x7f7775d79070, packet=0x7f7775db8071 "INSERT INTO t1 (a, data) VALUES (2,\nCONCAT(\"", 'a' <repeats 156 times>..., packet_length=12067, is_com_multi=false, is_next_command=false) at /home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/sql_parse.cc:1806
      #21 0x0000564c55d8affd in do_command (thd=0x7f7775d79070) at /home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/sql_parse.cc:1366
      #22 0x0000564c55ed0ccb in do_handle_one_connection (connect=0x7f778b86d590) at /home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/sql_connect.cc:1354
      #23 0x0000564c55ed0a4b in handle_one_connection (arg=0x7f778b86d590) at /home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/sql/sql_connect.cc:1260
      #24 0x0000564c561fcd98 in pfs_spawn_thread (arg=0x7f77803f27f0) at /home/nirbhay/project/git-repo/mariadb/bugs/10.2-mdev7635/storage/perfschema/pfs.cc:1862
      #25 0x00007f778d05f6fa in start_thread (arg=0x7f778c30f300) at pthread_create.c:333
      #26 0x00007f778c4f4b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
      

      Original test : rpl.rpl_row_binlog_max_cache_size

      Not reproducible on 10.1.

      Attachments

        Issue Links

          Activity

            People

              plinux Lixun Peng
              nirbhay_c Nirbhay Choubey (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.