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

InnoDB crashes under ... AND DISABLE CHECKPOINT

Details

    Description

      --source include/have_innodb.inc
       
      SET GLOBAL innodb_stats_persistent=0;
      CREATE TABLE t (a INT) ENGINE=INNODB;
      SET GLOBAL innodb_stats_persistent=1;
      ALTER TABLE t ADD COLUMN b INT;
      FLUSH TABLES WITH READ LOCK AND DISABLE checkpoint;
      INSERT INTO t VALUES (1) ;
       
      # Cleanup
      DROP TABLE t;
      

      Leads to:

      CS 11.7.1 54ab281de85f53e4fa7ba07384bed388737681e6 (Debug)

      mariadbd: /test/11.7_dbg/storage/innobase/mtr/mtr0mtr.cc:488: void mtr_t::commit(): Assertion `!m_modifications || !recv_no_log_write' failed.
      

      CS 11.7.1 54ab281de85f53e4fa7ba07384bed388737681e6 (Debug)

      Core was generated by `/test/MD141124-mariadb-11.7.1-linux-x86_64-dbg/bin/mariadbd --no-defaults --max'.
      Program terminated with signal SIGABRT, Aborted.
      #0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
      [Current thread is 1 (Thread 0x1543adcbe700 (LWP 1783843))]
      (gdb) bt
      #0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
      #1  0x000014f0869cd859 in __GI_abort () at abort.c:79
      #2  0x000014f0869cd729 in __assert_fail_base (fmt=0x14f086b63588 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x55d1862c0140 "!m_modifications || !recv_no_log_write", file=0x55d1862bef28 "/test/11.7_dbg/storage/innobase/mtr/mtr0mtr.cc", line=488, function=<optimized out>) at assert.c:92
      #3  0x000014f0869defd6 in __GI___assert_fail (assertion=assertion@entry=0x55d1862c0140 "!m_modifications || !recv_no_log_write", file=file@entry=0x55d1862bef28 "/test/11.7_dbg/storage/innobase/mtr/mtr0mtr.cc", line=line@entry=488, function=function@entry=0x55d1862beeba "void mtr_t::commit()") at assert.c:101
      #4  0x000055d185ada279 in mtr_t::commit (this=this@entry=0x14f0771dc5a0) at /test/11.7_dbg/storage/innobase/mtr/mtr0mtr.cc:488
      #5  0x000055d185c2748c in trx_undo_report_row_operation (thr=thr@entry=0x14f064023e38, index=index@entry=0x14f0640a3450, clust_entry=clust_entry@entry=0x14f0640a0760, update=update@entry=0x0, cmpl_info=cmpl_info@entry=0, rec=rec@entry=0x0, offsets=0x0, roll_ptr=0x14f0771dd5e0) at /test/11.7_dbg/storage/innobase/trx/trx0rec.cc:1984
      #6  0x000055d185c7f55d in btr_cur_ins_lock_and_undo (flags=flags@entry=0, cursor=cursor@entry=0x14f0771ddac0, entry=entry@entry=0x14f0640a0760, thr=thr@entry=0x14f064023e38, mtr=mtr@entry=0x14f0771de040, inherit=inherit@entry=0x14f0771dd6b6) at /test/11.7_dbg/storage/innobase/btr/btr0cur.cc:2200
      #7  0x000055d185c85a40 in btr_cur_optimistic_insert (flags=flags@entry=0, cursor=cursor@entry=0x14f0771ddac0, offsets=offsets@entry=0x14f0771ddaa8, heap=heap@entry=0x14f0771ddaa0, entry=entry@entry=0x14f0640a0760, rec=rec@entry=0x14f0771ddab8, big_rec=0x14f0771dda98, n_ext=<optimized out>, thr=0x14f064023e38, mtr=0x14f0771de040) at /test/11.7_dbg/storage/innobase/btr/btr0cur.cc:2424
      #8  0x000055d185b6ce0a in row_ins_clust_index_entry_low (flags=flags@entry=0, mode=<optimized out>, mode@entry=BTR_MODIFY_LEAF, index=index@entry=0x14f0640a3450, n_uniq=n_uniq@entry=2, entry=entry@entry=0x14f0640a0760, n_ext=n_ext@entry=0, thr=<optimized out>) at /test/11.7_dbg/storage/innobase/row/row0ins.cc:2882
      #9  0x000055d185b6e71e in row_ins_clust_index_entry (index=index@entry=0x14f0640a3450, entry=entry@entry=0x14f0640a0760, thr=thr@entry=0x14f064023e38, n_ext=n_ext@entry=0) at /test/11.7_dbg/storage/innobase/row/row0ins.cc:3267
      #10 0x000055d185b6fedd in row_ins_index_entry (thr=0x14f064023e38, entry=0x14f0640a0760, index=0x14f0640a3450) at /test/11.7_dbg/storage/innobase/row/row0ins.cc:3402
      #11 row_ins_index_entry_step (thr=0x14f064023e38, node=<optimized out>) at /test/11.7_dbg/storage/innobase/row/row0ins.cc:3568
      #12 row_ins (thr=0x14f064023e38, node=<optimized out>) at /test/11.7_dbg/storage/innobase/row/row0ins.cc:3685
      #13 row_ins_step (thr=thr@entry=0x14f064023e38) at /test/11.7_dbg/storage/innobase/row/row0ins.cc:3814
      #14 0x000055d185b287d6 in que_thr_step (thr=0x14f064023e38) at /test/11.7_dbg/storage/innobase/que/que0que.cc:533
      #15 que_run_threads_low (thr=0x14f064023e38) at /test/11.7_dbg/storage/innobase/que/que0que.cc:610
      #16 que_run_threads (thr=0x14f064023e38) at /test/11.7_dbg/storage/innobase/que/que0que.cc:630
      #17 0x000055d185b28d75 in que_eval_sql (info=info@entry=0x14f0641a95f0, sql=sql@entry=0x55d18630b750 "PROCEDURE TABLE_STATS_SAVE () IS\nBEGIN\nDELETE FROM \"mysql/innodb_table_stats\"\nWHERE\ndatabase_name = :database_name AND\ntable_name = :table_name;\nINSERT INTO \"mysql/innodb_table_stats\"\nVALUES\n(\n:databa"..., trx=trx@entry=0x14f085795680) at /test/11.7_dbg/storage/innobase/que/que0que.cc:669
      #18 0x000055d185d2bbad in dict_stats_exec_sql (pinfo=pinfo@entry=0x14f0641a95f0, sql=sql@entry=0x55d18630b750 "PROCEDURE TABLE_STATS_SAVE () IS\nBEGIN\nDELETE FROM \"mysql/innodb_table_stats\"\nWHERE\ndatabase_name = :database_name AND\ntable_name = :table_name;\nINSERT INTO \"mysql/innodb_table_stats\"\nVALUES\n(\n:databa"..., trx=trx@entry=0x14f085795680) at /test/11.7_dbg/storage/innobase/dict/dict0stats.cc:552
      #19 0x000055d185d30436 in dict_stats_save (table_orig=table_orig@entry=0x14f06417eb10, only_for_index=only_for_index@entry=0x0) at /test/11.7_dbg/storage/innobase/dict/dict0stats.cc:3277
      #20 0x000055d185d3388b in dict_stats_update (table=table@entry=0x14f06417eb10, stats_upd_option=stats_upd_option@entry=DICT_STATS_RECALC_PERSISTENT) at /test/11.7_dbg/storage/innobase/dict/dict0stats.cc:4039
      #21 0x000055d185d33f6c in dict_stats_update (table=table@entry=0x14f06417eb10, stats_upd_option=<optimized out>) at /test/11.7_dbg/storage/innobase/dict/dict0stats.cc:4157
      #22 0x000055d185a191ab in dict_stats_init (table=0x14f06417eb10) at /test/11.7_dbg/storage/innobase/include/dict0stats.inl:165
      #23 ha_innobase::info_low (this=this@entry=0x14f0641017b0, flag=flag@entry=282, is_analyze=is_analyze@entry=false) at /test/11.7_dbg/storage/innobase/handler/ha_innodb.cc:14742
      #24 0x000055d185a19dcc in ha_innobase::info (this=this@entry=0x14f0641017b0, flag=flag@entry=282) at /test/11.7_dbg/storage/innobase/handler/ha_innodb.cc:15019
      #25 0x000055d185a2c5ac in ha_innobase::open (this=<optimized out>, name=<optimized out>) at /test/11.7_dbg/storage/innobase/handler/ha_innodb.cc:6051
      #26 0x000055d1856ef5a3 in handler::ha_open (this=0x14f0641017b0, table_arg=table_arg@entry=0x14f064046898, name=0x14f0640ee010 "./test/t", mode=mode@entry=2, test_if_locked=test_if_locked@entry=18, mem_root=mem_root@entry=0x0, partitions_to_open=0x0) at /test/11.7_dbg/sql/handler.cc:3625
      #27 0x000055d1854f6599 in open_table_from_share (thd=thd@entry=0x14f064000d48, share=share@entry=0x14f0640ed970, alias=alias@entry=0x14f0640168a0, db_stat=db_stat@entry=33, prgflag=prgflag@entry=8, ha_open_flags=18, outparam=0x14f064046898, is_create_table=false, partitions_to_open=0x0) at /test/11.7_dbg/sql/table.cc:4629
      #28 0x000055d185320b9f in open_table (thd=thd@entry=0x14f064000d48, table_list=table_list@entry=0x14f064016858, ot_ctx=ot_ctx@entry=0x14f0771e18b0) at /test/11.7_dbg/sql/sql_base.cc:2239
      #29 0x000055d1853254d7 in open_and_process_table (ot_ctx=0x14f0771e18b0, has_prelocking_list=false, prelocking_strategy=0x14f0771e1aa0, flags=0, counter=0x14f0771e194c, tables=0x14f064016858, thd=0x14f064000d48) at /test/11.7_dbg/sql/sql_base.cc:4177
      #30 open_tables (thd=thd@entry=0x14f064000d48, options=..., start=start@entry=0x14f0771e1938, counter=counter@entry=0x14f0771e194c, flags=flags@entry=0, prelocking_strategy=prelocking_strategy@entry=0x14f0771e1aa0) at /test/11.7_dbg/sql/sql_base.cc:4663
      #31 0x000055d18532647f in open_and_lock_tables (thd=thd@entry=0x14f064000d48, options=..., tables=<optimized out>, tables@entry=0x14f064016858, derived=derived@entry=true, flags=flags@entry=0, prelocking_strategy=prelocking_strategy@entry=0x14f0771e1aa0) at /test/11.7_dbg/sql/sql_base.cc:5632
      #32 0x000055d18536d9fc in open_and_lock_tables (flags=0, derived=true, tables=0x14f064016858, thd=0x14f064000d48) at /test/11.7_dbg/sql/sql_base.h:533
      #33 mysql_insert (thd=thd@entry=0x14f064000d48, table_list=0x14f064016858, fields=..., values_list=..., update_fields=..., update_values=..., duplic=DUP_ERROR, ignore=false, result=0x0) at /test/11.7_dbg/sql/sql_insert.cc:784
      #34 0x000055d1853b132b in mysql_execute_command (thd=thd@entry=0x14f064000d48, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false) at /test/11.7_dbg/sql/sql_parse.cc:4471
      #35 0x000055d1853a0679 in mysql_parse (thd=thd@entry=0x14f064000d48, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x14f0771e2300) at /test/11.7_dbg/sql/sql_parse.cc:7901
      #36 0x000055d1853b7bb7 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x14f064000d48, packet=packet@entry=0x14f064098a59 "INSERT INTO t (a) VALUES (1) ", packet_length=packet_length@entry=29, blocking=blocking@entry=true) at /test/11.7_dbg/sql/sql_class.h:1656
      #37 0x000055d1853ba40a in do_command (thd=thd@entry=0x14f064000d48, blocking=blocking@entry=true) at /test/11.7_dbg/sql/sql_parse.cc:1416
      #38 0x000055d18553d2e9 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x55d188144e18, put_in_cache=put_in_cache@entry=true) at /test/11.7_dbg/sql/sql_connect.cc:1438
      #39 0x000055d18553d7c3 in handle_one_connection (arg=0x55d188144e18) at /test/11.7_dbg/sql/sql_connect.cc:1350
      #40 0x000014f086ef9609 in start_thread (arg=<optimized out>) at pthread_create.c:477
      #41 0x000014f086aca133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
      

      Bug confirmed present in:
      MariaDB: 11.7.1 (dbg)

      Bug (or feature/syntax) confirmed not present in:
      MariaDB: 10.5.28 (dbg), 10.5.28 (opt), 10.6.21 (dbg), 10.6.21 (opt), 10.11.11 (dbg), 10.11.11 (opt), 11.2.6 (dbg), 11.2.6 (opt), 11.4.5 (dbg), 11.4.5 (opt), 11.6.2 (dbg), 11.6.2 (opt), 11.7.1 (opt)

      Attachments

        Issue Links

          Activity

            let's restore the old behavior and make InnoDB ignore the AND DISABLE CHECKPOINT clause for now

            serg Sergei Golubchik added a comment - let's restore the old behavior and make InnoDB ignore the AND DISABLE CHECKPOINT clause for now
            Roel Roel Van de Paar added a comment - - edited

            I also ran into this, with the following sporadic testcase, resulting in a different assert:

            # Repeat 500-3000 times
            CREATE TABLE t1 (c INT) ENGINE=InnoDB;
            CREATE TABLE t2 (c INT) ENGINE=InnoDB;
            FLUSH TABLES t1 FOR EXPORT;
            UNLOCK TABLES;
            FLUSH TABLES WITH READ LOCK AND DISABLE CHECKPOINT;
            UNLOCK TABLES;
            DROP TABLE t1, t2;
            

            Leads to:

            CS 11.8.0 7734c85c31c9e292ef1133115fba2f7edd71dd51 (Debug)

            mariadbd: /test/11.8_dbg/storage/innobase/buf/buf0flu.cc:1944: bool log_checkpoint_low(lsn_t, lsn_t): Assertion `!recv_no_log_write' failed.
            

            CS 11.8.0 7734c85c31c9e292ef1133115fba2f7edd71dd51 (Debug)

            Core was generated by `/test/MD191224-mariadb-11.8.0-linux-x86_64-dbg/bin/mariadbd --no-defaults --max'.
            Program terminated with signal SIGABRT, Aborted.
            Download failed: Invalid argument.  Continuing without source file ./nptl/./nptl/pthread_kill.c.
            #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44
             
            [Current thread is 1 (LWP 1521478)]
            (gdb) bt
            #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=signo@entry=6)at ./nptl/pthread_kill.c:89
            #3  0x00001474c4c4526e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26
            #4  0x00001474c4c288ff in __GI_abort () at ./stdlib/abort.c:79
            #5  0x00001474c4c2881b in __assert_fail_base (fmt=0x1474c4dd01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x565083e34a31 "!recv_no_log_write", file=file@entry=0x565083e71186 "/test/11.8_dbg/storage/innobase/buf/buf0flu.cc", line=line@entry=1944, function=function@entry=0x565083e71d90 "bool log_checkpoint_low(lsn_t, lsn_t)") at ./assert/assert.c:94
            #6  0x00001474c4c3b507 in __assert_fail (assertion=0x565083e34a31 "!recv_no_log_write", file=0x565083e71186 "/test/11.8_dbg/storage/innobase/buf/buf0flu.cc", line=1944, function=0x565083e71d90 "bool log_checkpoint_low(lsn_t, lsn_t)")at ./assert/assert.c:103
            #7  0x0000565083879102 in log_checkpoint_low (oldest_lsn=9286856, end_lsn=9286856) at /test/11.8_dbg/storage/innobase/buf/buf0flu.cc:1944
            #8  0x000056508387b7af in buf_flush_sync_for_checkpoint (lsn=9286856)at /test/11.8_dbg/storage/innobase/buf/buf0flu.cc:2190
            #9  0x00005650838777cf in buf_flush_page_cleaner ()at /test/11.8_dbg/storage/innobase/buf/buf0flu.cc:2435
            #10 0x0000565083880ae2 in std::__invoke_impl<void, void (*)()> (__f=@0x565085f43a58: 0x5650838775d0 <buf_flush_page_cleaner()>)at /usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/invoke.h:61
            #11 0x0000565083880aa5 in std::__invoke<void (*)()> (__fn=@0x565085f43a58: 0x5650838775d0 <buf_flush_page_cleaner()>)at /usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/invoke.h:96
            #12 0x0000565083880a7d in std::thread::_Invoker<std::tuple<void (*)()> >::_M_invoke<0ul> (this=0x565085f43a58)at /usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/std_thread.h:292
            #13 0x0000565083880a55 in std::thread::_Invoker<std::tuple<void (*)()> >::operator() (this=0x565085f43a58)at /usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/std_thread.h:299
            #14 0x00005650838809b9 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)()> > >::_M_run (this=0x565085f43a50)at /usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/std_thread.h:244
            #15 0x00001474c50eabb4 in std::execute_native_thread_routine (__p=0x565085f43a50)at ../../../../../src/libstdc++-v3/src/c++11/thread.cc:104
            #16 0x00001474c4c9ca94 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447
            #17 0x00001474c4d29c3c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
            

            Note: UB+ASAN builds require less iterations of the testcase, generally 20-100, so timing likely plays a role.

            Roel Roel Van de Paar added a comment - - edited I also ran into this, with the following sporadic testcase, resulting in a different assert: # Repeat 500-3000 times CREATE TABLE t1 (c INT ) ENGINE=InnoDB; CREATE TABLE t2 (c INT ) ENGINE=InnoDB; FLUSH TABLES t1 FOR EXPORT; UNLOCK TABLES; FLUSH TABLES WITH READ LOCK AND DISABLE CHECKPOINT ; UNLOCK TABLES; DROP TABLE t1, t2; Leads to: CS 11.8.0 7734c85c31c9e292ef1133115fba2f7edd71dd51 (Debug) mariadbd: /test/11.8_dbg/storage/innobase/buf/buf0flu.cc:1944: bool log_checkpoint_low(lsn_t, lsn_t): Assertion `!recv_no_log_write' failed. CS 11.8.0 7734c85c31c9e292ef1133115fba2f7edd71dd51 (Debug) Core was generated by `/test/MD191224-mariadb-11.8.0-linux-x86_64-dbg/bin/mariadbd --no-defaults --max'. Program terminated with signal SIGABRT, Aborted. Download failed: Invalid argument. Continuing without source file ./nptl/./nptl/pthread_kill.c. #0 __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44   [Current thread is 1 (LWP 1521478)] (gdb) bt #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=signo@entry=6)at ./nptl/pthread_kill.c:89 #3 0x00001474c4c4526e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26 #4 0x00001474c4c288ff in __GI_abort () at ./stdlib/abort.c:79 #5 0x00001474c4c2881b in __assert_fail_base (fmt=0x1474c4dd01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x565083e34a31 "!recv_no_log_write", file=file@entry=0x565083e71186 "/test/11.8_dbg/storage/innobase/buf/buf0flu.cc", line=line@entry=1944, function=function@entry=0x565083e71d90 "bool log_checkpoint_low(lsn_t, lsn_t)") at ./assert/assert.c:94 #6 0x00001474c4c3b507 in __assert_fail (assertion=0x565083e34a31 "!recv_no_log_write", file=0x565083e71186 "/test/11.8_dbg/storage/innobase/buf/buf0flu.cc", line=1944, function=0x565083e71d90 "bool log_checkpoint_low(lsn_t, lsn_t)")at ./assert/assert.c:103 #7 0x0000565083879102 in log_checkpoint_low (oldest_lsn=9286856, end_lsn=9286856) at /test/11.8_dbg/storage/innobase/buf/buf0flu.cc:1944 #8 0x000056508387b7af in buf_flush_sync_for_checkpoint (lsn=9286856)at /test/11.8_dbg/storage/innobase/buf/buf0flu.cc:2190 #9 0x00005650838777cf in buf_flush_page_cleaner ()at /test/11.8_dbg/storage/innobase/buf/buf0flu.cc:2435 #10 0x0000565083880ae2 in std::__invoke_impl<void, void (*)()> (__f=@0x565085f43a58: 0x5650838775d0 <buf_flush_page_cleaner()>)at /usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/invoke.h:61 #11 0x0000565083880aa5 in std::__invoke<void (*)()> (__fn=@0x565085f43a58: 0x5650838775d0 <buf_flush_page_cleaner()>)at /usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/invoke.h:96 #12 0x0000565083880a7d in std::thread::_Invoker<std::tuple<void (*)()> >::_M_invoke<0ul> (this=0x565085f43a58)at /usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/std_thread.h:292 #13 0x0000565083880a55 in std::thread::_Invoker<std::tuple<void (*)()> >::operator() (this=0x565085f43a58)at /usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/std_thread.h:299 #14 0x00005650838809b9 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)()> > >::_M_run (this=0x565085f43a50)at /usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/std_thread.h:244 #15 0x00001474c50eabb4 in std::execute_native_thread_routine (__p=0x565085f43a50)at ../../../../../src/libstdc++-v3/src/c++11/thread.cc:104 #16 0x00001474c4c9ca94 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447 #17 0x00001474c4d29c3c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78 Note: UB+ASAN builds require less iterations of the testcase, generally 20-100, so timing likely plays a role.

            I also saw this assert/stack once:

            !recv_no_log_write || srv_operation != SRV_OPERATION_NORMAL|SIGABRT|log_write_up_to|log_checkpoint_low|buf_flush_sync_for_checkpoint|buf_flush_page_cleaner
            

            With an earlier iteration of the testcase. However it does not reproduce, and commonly the assert/stack from the previous comment is seen instead.

            Roel Roel Van de Paar added a comment - I also saw this assert/stack once: !recv_no_log_write || srv_operation != SRV_OPERATION_NORMAL|SIGABRT|log_write_up_to|log_checkpoint_low|buf_flush_sync_for_checkpoint|buf_flush_page_cleaner With an earlier iteration of the testcase. However it does not reproduce, and commonly the assert/stack from the previous comment is seen instead.
            Roel Roel Van de Paar added a comment - - edited

            With the "earlier iteration of the testcase" mentioned in the last comment:

            # Loop 20-3000 times
            DROP DATABASE test;
            CREATE DATABASE test;
            USE test;
            INSERT INTO t1 VALUES (1,100),(2,200);
            CREATE TABLE `t1` ( `geo` geometry DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
            CREATE TABLE sbtest1 (a INT PRIMARY KEY, b VARCHAR(1000));
            CREATE TABLE t1( a VARBINARY(256) COLUMN_FORMAT COMPRESSED ) ROW_FORMAT = DYNAMIC ENGINE=RocksDB;
            FLUSH TABLES t1 FOR EXPORT;
            UNLOCK TABLES;
            FLUSH TABLES WITH READ LOCK AND DISABLE CHECKPOINT;
            

            I also saw this somewhat different stack on an UB+ASAN build once:

            CS 11.8.0 7734c85c31c9e292ef1133115fba2f7edd71dd51 (Debug, UBASAN, Clang)

            mariadbd: /test/11.8_dbg_san/storage/innobase/buf/buf0flu.cc:1944: bool log_checkpoint_low(lsn_t, lsn_t): Assertion `!recv_no_log_write' failed.
            

            CS 11.8.0 7734c85c31c9e292ef1133115fba2f7edd71dd51 (Debug, UBASAN, Clang)

            Core was generated by `/test/UBASAN_MD191224-mariadb-11.8.0-linux-x86_64-dbg/bin/mariadbd --no-default'.
            Program terminated with signal SIGABRT, Aborted.
            Download failed: Invalid argument.  Continuing without source file ./nptl/./nptl/pthread_kill.c.
            #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44
             
            [Current thread is 1 (LWP 2325348)]
            (gdb) bt
            #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  0x000056015d34fd0f in my_write_core (sig=6)at /test/11.8_dbg_san/mysys/stacktrace.c:424
            #4  0x0000560159746124 in handle_fatal_signal (sig=6)at /test/11.8_dbg_san/sql/signal_handler.cc:366
            #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  0x000014d10084526e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26
            #10 0x000014d1008288ff in __GI_abort () at ./stdlib/abort.c:79
            #11 0x000014d10082881b in __assert_fail_base (fmt=0x14d1009d01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x56015ebca180 <str> "!recv_no_log_write", file=file@entry=0x56015e2e00db "/test/11.8_dbg_san/storage/innobase/buf/buf0flu.cc", line=line@entry=1944, function=function@entry=0x56015ebca060 <__PRETTY_FUNCTION__._ZL18log_checkpoint_lowmm> "bool log_checkpoint_low(lsn_t, lsn_t)") at ./assert/assert.c:94
            #12 0x000014d10083b507 in __assert_fail (assertion=0x56015ebca180 <str> "!recv_no_log_write", file=0x56015e2e00db "/test/11.8_dbg_san/storage/innobase/buf/buf0flu.cc", line=1944, function=0x56015ebca060 <__PRETTY_FUNCTION__._ZL18log_checkpoint_lowmm> "bool log_checkpoint_low(lsn_t, lsn_t)") at ./assert/assert.c:103
            #13 0x000056015c869028 in log_checkpoint_low (oldest_lsn=146440, end_lsn=146440) at /test/11.8_dbg_san/storage/innobase/buf/buf0flu.cc:1944
            #14 0x000056015c85fc88 in log_checkpoint ()at /test/11.8_dbg_san/storage/innobase/buf/buf0flu.cc:1998
            #15 0x000056015c85faea in buf_flush_wait_flushed (sync_lsn=146440)at /test/11.8_dbg_san/storage/innobase/buf/buf0flu.cc:2097
            #16 0x000056015c85e091 in log_make_checkpoint ()at /test/11.8_dbg_san/storage/innobase/buf/buf0flu.cc:2004
            #17 0x000056015b789eae in sst_disable_innodb_writes ()at /test/11.8_dbg_san/storage/innobase/handler/ha_innodb.cc:1919
            #18 0x000056015b770a34 in innodb_disable_internal_writes (disable=true)at /test/11.8_dbg_san/storage/innobase/handler/ha_innodb.cc:1937
            #19 0x000056015975f30f in plugin_disable_internal_writes (plugin=0x50300003d828, disable=0x14d0d02224a0)at /test/11.8_dbg_san/sql/handler.cc:998
            #20 0x00005601573b237e in plugin_foreach_with_mask (thd=0x0, func=0x56015975f0a8 <plugin_disable_internal_writes(THD*, st_plugin_int**, void*)>, type=1, state_mask=8, arg=0x14d0d02224a0)at /test/11.8_dbg_san/sql/sql_plugin.cc:2546
            #21 0x000056015975f048 in ha_disable_internal_writes (disable=true)at /test/11.8_dbg_san/sql/handler.cc:1005
            #22 0x00005601584e1cf7 in disable_checkpoints (thd=0x52b000173218)at /test/11.8_dbg_san/sql/sql_reload.cc:680
            #23 0x00005601584dccff in reload_acl_and_cache (thd=0x52b000173218, options=49156, tables=0x0, write_to_binlog=0x14d0d08e5c00)at /test/11.8_dbg_san/sql/sql_reload.cc:291
            #24 0x00005601572284b0 in mysql_execute_command (thd=0x52b000173218, is_called_from_prepared_stmt=false)at /test/11.8_dbg_san/sql/sql_parse.cc:5340
            #25 0x000056015719aefa in mysql_parse (thd=0x52b000173218, rawbuf=0x52900010e238 "FLUSH TABLES WITH READ LOCK AND DISABLE CHECKPOINT", length=50, parser_state=0x14d0d09b17b0)at /test/11.8_dbg_san/sql/sql_parse.cc:7901
            #26 0x000056015717bdb9 in dispatch_command (command=COM_QUERY, thd=0x52b000173218, packet=0x529000316219 "FLUSH TABLES WITH READ LOCK AND DISABLE CHECKPOINT", packet_length=50, blocking=true) at /test/11.8_dbg_san/sql/sql_parse.cc:1903
            #27 0x00005601571a4e57 in do_command (thd=0x52b000173218, blocking=true)at /test/11.8_dbg_san/sql/sql_parse.cc:1416
            #28 0x0000560158307557 in do_handle_one_connection (connect=0x508000003c38, put_in_cache=true) at /test/11.8_dbg_san/sql/sql_connect.cc:1415
            #29 0x0000560158305d1a in handle_one_connection (arg=0x508000003138)at /test/11.8_dbg_san/sql/sql_connect.cc:1327
            #30 0x000056015634e5fd in asan_thread_start(void*) ()
            #31 0x000014d10089ca94 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447
            #32 0x000014d100929c3c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
            

            Roel Roel Van de Paar added a comment - - edited With the "earlier iteration of the testcase" mentioned in the last comment: # Loop 20-3000 times DROP DATABASE test; CREATE DATABASE test; USE test; INSERT INTO t1 VALUES (1,100),(2,200); CREATE TABLE `t1` ( `geo` geometry DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE sbtest1 (a INT PRIMARY KEY , b VARCHAR (1000)); CREATE TABLE t1( a VARBINARY(256) COLUMN_FORMAT COMPRESSED ) ROW_FORMAT = DYNAMIC ENGINE=RocksDB; FLUSH TABLES t1 FOR EXPORT; UNLOCK TABLES; FLUSH TABLES WITH READ LOCK AND DISABLE CHECKPOINT ; I also saw this somewhat different stack on an UB+ASAN build once: CS 11.8.0 7734c85c31c9e292ef1133115fba2f7edd71dd51 (Debug, UBASAN, Clang) mariadbd: /test/11.8_dbg_san/storage/innobase/buf/buf0flu.cc:1944: bool log_checkpoint_low(lsn_t, lsn_t): Assertion `!recv_no_log_write' failed. CS 11.8.0 7734c85c31c9e292ef1133115fba2f7edd71dd51 (Debug, UBASAN, Clang) Core was generated by `/test/UBASAN_MD191224-mariadb-11.8.0-linux-x86_64-dbg/bin/mariadbd --no-default'. Program terminated with signal SIGABRT, Aborted. Download failed: Invalid argument. Continuing without source file ./nptl/./nptl/pthread_kill.c. #0 __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44   [Current thread is 1 (LWP 2325348)] (gdb) bt #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 0x000056015d34fd0f in my_write_core (sig=6)at /test/11.8_dbg_san/mysys/stacktrace.c:424 #4 0x0000560159746124 in handle_fatal_signal (sig=6)at /test/11.8_dbg_san/sql/signal_handler.cc:366 #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 0x000014d10084526e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26 #10 0x000014d1008288ff in __GI_abort () at ./stdlib/abort.c:79 #11 0x000014d10082881b in __assert_fail_base (fmt=0x14d1009d01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x56015ebca180 <str> "!recv_no_log_write", file=file@entry=0x56015e2e00db "/test/11.8_dbg_san/storage/innobase/buf/buf0flu.cc", line=line@entry=1944, function=function@entry=0x56015ebca060 <__PRETTY_FUNCTION__._ZL18log_checkpoint_lowmm> "bool log_checkpoint_low(lsn_t, lsn_t)") at ./assert/assert.c:94 #12 0x000014d10083b507 in __assert_fail (assertion=0x56015ebca180 <str> "!recv_no_log_write", file=0x56015e2e00db "/test/11.8_dbg_san/storage/innobase/buf/buf0flu.cc", line=1944, function=0x56015ebca060 <__PRETTY_FUNCTION__._ZL18log_checkpoint_lowmm> "bool log_checkpoint_low(lsn_t, lsn_t)") at ./assert/assert.c:103 #13 0x000056015c869028 in log_checkpoint_low (oldest_lsn=146440, end_lsn=146440) at /test/11.8_dbg_san/storage/innobase/buf/buf0flu.cc:1944 #14 0x000056015c85fc88 in log_checkpoint ()at /test/11.8_dbg_san/storage/innobase/buf/buf0flu.cc:1998 #15 0x000056015c85faea in buf_flush_wait_flushed (sync_lsn=146440)at /test/11.8_dbg_san/storage/innobase/buf/buf0flu.cc:2097 #16 0x000056015c85e091 in log_make_checkpoint ()at /test/11.8_dbg_san/storage/innobase/buf/buf0flu.cc:2004 #17 0x000056015b789eae in sst_disable_innodb_writes ()at /test/11.8_dbg_san/storage/innobase/handler/ha_innodb.cc:1919 #18 0x000056015b770a34 in innodb_disable_internal_writes (disable=true)at /test/11.8_dbg_san/storage/innobase/handler/ha_innodb.cc:1937 #19 0x000056015975f30f in plugin_disable_internal_writes (plugin=0x50300003d828, disable=0x14d0d02224a0)at /test/11.8_dbg_san/sql/handler.cc:998 #20 0x00005601573b237e in plugin_foreach_with_mask (thd=0x0, func=0x56015975f0a8 <plugin_disable_internal_writes(THD*, st_plugin_int**, void*)>, type=1, state_mask=8, arg=0x14d0d02224a0)at /test/11.8_dbg_san/sql/sql_plugin.cc:2546 #21 0x000056015975f048 in ha_disable_internal_writes (disable=true)at /test/11.8_dbg_san/sql/handler.cc:1005 #22 0x00005601584e1cf7 in disable_checkpoints (thd=0x52b000173218)at /test/11.8_dbg_san/sql/sql_reload.cc:680 #23 0x00005601584dccff in reload_acl_and_cache (thd=0x52b000173218, options=49156, tables=0x0, write_to_binlog=0x14d0d08e5c00)at /test/11.8_dbg_san/sql/sql_reload.cc:291 #24 0x00005601572284b0 in mysql_execute_command (thd=0x52b000173218, is_called_from_prepared_stmt=false)at /test/11.8_dbg_san/sql/sql_parse.cc:5340 #25 0x000056015719aefa in mysql_parse (thd=0x52b000173218, rawbuf=0x52900010e238 "FLUSH TABLES WITH READ LOCK AND DISABLE CHECKPOINT", length=50, parser_state=0x14d0d09b17b0)at /test/11.8_dbg_san/sql/sql_parse.cc:7901 #26 0x000056015717bdb9 in dispatch_command (command=COM_QUERY, thd=0x52b000173218, packet=0x529000316219 "FLUSH TABLES WITH READ LOCK AND DISABLE CHECKPOINT", packet_length=50, blocking=true) at /test/11.8_dbg_san/sql/sql_parse.cc:1903 #27 0x00005601571a4e57 in do_command (thd=0x52b000173218, blocking=true)at /test/11.8_dbg_san/sql/sql_parse.cc:1416 #28 0x0000560158307557 in do_handle_one_connection (connect=0x508000003c38, put_in_cache=true) at /test/11.8_dbg_san/sql/sql_connect.cc:1415 #29 0x0000560158305d1a in handle_one_connection (arg=0x508000003138)at /test/11.8_dbg_san/sql/sql_connect.cc:1327 #30 0x000056015634e5fd in asan_thread_start(void*) () #31 0x000014d10089ca94 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447 #32 0x000014d100929c3c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78

            Also observed these UniqueID's which upon testcase reduction looked directly related (FLUSH TABLES WITH READ LOCK AND DISABLE CHECKPOINT;)

            !m_modifications || !recv_no_log_write|SIGABRT|log_checkpoint_low|buf_flush_sync_for_checkpoint|buf_flush_page_cleaner|std::execute_native_thread_routine
            !m_modifications || !recv_no_log_write|SIGABRT|log_write_up_to|buf_page_t::flush|buf_do_flush_list_batch|buf_flush_list_holding_mutex
            

            Full stacks:

            CS 11.8.0 349b8a10274c88887b7b2af24b4200724617611f (Debug)

            mariadbd: /test/preview-11.8-preview_dbg_san/storage/innobase/mtr/mtr0mtr.cc:487: void mtr_t::commit(): Assertion `!m_modifications || !recv_no_log_write' failed.
            

            CS 11.8.0 349b8a10274c88887b7b2af24b4200724617611f (Debug)

            Core was generated by `/test/preview-11.8-preview_UBASAN_MD110125-mariadb-11.8.0-linux-x86_64-dbg/bin/'.
            Program terminated with signal SIGABRT, Aborted.
            #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44
             
            [Current thread is 1 (LWP 503620)]
            (gdb) bt
            #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=signo@entry=6)at ./nptl/pthread_kill.c:89
            #3  0x000015442844526e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26
            #4  0x00001544284288ff in __GI_abort () at ./stdlib/abort.c:79
            #5  0x000015442842881b in __assert_fail_base (fmt=0x1544285d01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x557e3be68500 <str> "!recv_no_log_write", file=file@entry=0x557e3be650a0 "/test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc", line=line@entry=1945, function=function@entry=0x557e3be683e0 <__PRETTY_FUNCTION__._ZL18log_checkpoint_lowmm> "bool log_checkpoint_low(lsn_t, lsn_t)") at ./assert/assert.c:94
            #6  0x000015442843b507 in __assert_fail (assertion=0x557e3be68500 <str> "!recv_no_log_write", file=0x557e3be650a0 "/test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc", line=1945, function=0x557e3be683e0 <__PRETTY_FUNCTION__._ZL18log_checkpoint_lowmm> "bool log_checkpoint_low(lsn_t, lsn_t)") at ./assert/assert.c:103
            #7  0x0000557e3ab0440b in log_checkpoint_low (oldest_lsn=oldest_lsn@entry=369393, end_lsn=end_lsn@entry=369436)at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:1945
            #8  0x0000557e37ff1230 in buf_flush_sync_for_checkpoint (lsn=<optimized out>)at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:2191
            #9  0x0000557e3ab0105f in buf_flush_page_cleaner ()at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:2436
            #10 0x00001544288eabb4 in std::execute_native_thread_routine (__p=0x502000000190)at ../../../../../src/libstdc++-v3/src/c++11/thread.cc:104
            #11 0x0000557e3818d90d in asan_thread_start(void*) ()
            #12 0x000015442849ca94 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447
            #13 0x0000154428529c3c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
            

            And

            CS 11.8.0 349b8a10274c88887b7b2af24b4200724617611f (Debug)

            mariadbd: /test/preview-11.8-preview_dbg_san/storage/innobase/mtr/mtr0mtr.cc:487: void mtr_t::commit(): Assertion `!m_modifications || !recv_no_log_write' failed.
            

            CS 11.8.0 349b8a10274c88887b7b2af24b4200724617611f (Debug)

            Core was generated by `/test/preview-11.8-preview_UBASAN_MD110125-mariadb-11.8.0-linux-x86_64-dbg/bin/'.
            Program terminated with signal SIGABRT, Aborted.
            #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44
             
            [Current thread is 1 (LWP 860341)]
            (gdb) bt
            #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=signo@entry=6)at ./nptl/pthread_kill.c:89
            #3  0x000014612284526e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26
            #4  0x00001461228288ff in __GI_abort () at ./stdlib/abort.c:79
            #5  0x000014612282881b in __assert_fail_base (fmt=0x1461229d01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x55dc52664040 <str> "!recv_no_log_write || srv_operation != SRV_OPERATION_NORMAL", file=file@entry=0x55dc52662be0 "/test/preview-11.8-preview_dbg_san/storage/innobase/log/log0log.cc", line=line@entry=1160, function=function@entry=0x55dc52663ee0 <__PRETTY_FUNCTION__._Z15log_write_up_tombPK19completion_callback> "void log_write_up_to(lsn_t, bool, const completion_callback *)") at ./assert/assert.c:94
            #6  0x000014612283b507 in __assert_fail (assertion=0x55dc52664040 <str> "!recv_no_log_write || srv_operation != SRV_OPERATION_NORMAL", file=0x55dc52662be0 "/test/preview-11.8-preview_dbg_san/storage/innobase/log/log0log.cc", line=1160, function=0x55dc52663ee0 <__PRETTY_FUNCTION__._Z15log_write_up_tombPK19completion_callback> "void log_write_up_to(lsn_t, bool, const completion_callback *)") at ./assert/assert.c:103
            #7  0x000055dc50f8bfb4 in log_write_up_to (lsn=363554, lsn@entry=363511, durable=true, callback=callback@entry=0x0)at /test/preview-11.8-preview_dbg_san/storage/innobase/log/log0log.cc:1160
            #8  0x000055dc51415190 in buf_page_t::flush (this=<optimized out>, space=<optimized out>)at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:755
            #9  0x000055dc51420fd3 in buf_do_flush_list_batch (max_n=2000, lsn=363554)at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:1484
            #10 buf_flush_list_holding_mutex (max_n=max_n@entry=2000, lsn=lsn@entry=363554)at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:1558
            #11 0x000055dc5141a38a in buf_flush_list (max_n=2000, lsn=lsn@entry=363554)at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:1584
            #12 0x000055dc4e90ce9d in buf_flush_sync_for_checkpoint (lsn=363554)at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:2172
            #13 0x000055dc5141d05f in buf_flush_page_cleaner ()at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:2436
            #14 0x0000146122ceabb4 in std::execute_native_thread_routine (__p=0x502000000190)at ../../../../../src/libstdc++-v3/src/c++11/thread.cc:104
            #15 0x000055dc4eaa990d in asan_thread_start(void*) ()
            #16 0x000014612289ca94 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447
            #17 0x0000146122929c3c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
            

            Roel Roel Van de Paar added a comment - Also observed these UniqueID's which upon testcase reduction looked directly related ( FLUSH TABLES WITH READ LOCK AND DISABLE CHECKPOINT; ) !m_modifications || !recv_no_log_write|SIGABRT|log_checkpoint_low|buf_flush_sync_for_checkpoint|buf_flush_page_cleaner|std::execute_native_thread_routine !m_modifications || !recv_no_log_write|SIGABRT|log_write_up_to|buf_page_t::flush|buf_do_flush_list_batch|buf_flush_list_holding_mutex Full stacks: CS 11.8.0 349b8a10274c88887b7b2af24b4200724617611f (Debug) mariadbd: /test/preview-11.8-preview_dbg_san/storage/innobase/mtr/mtr0mtr.cc:487: void mtr_t::commit(): Assertion `!m_modifications || !recv_no_log_write' failed. CS 11.8.0 349b8a10274c88887b7b2af24b4200724617611f (Debug) Core was generated by `/test/preview-11.8-preview_UBASAN_MD110125-mariadb-11.8.0-linux-x86_64-dbg/bin/'. Program terminated with signal SIGABRT, Aborted. #0 __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44   [Current thread is 1 (LWP 503620)] (gdb) bt #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=signo@entry=6)at ./nptl/pthread_kill.c:89 #3 0x000015442844526e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26 #4 0x00001544284288ff in __GI_abort () at ./stdlib/abort.c:79 #5 0x000015442842881b in __assert_fail_base (fmt=0x1544285d01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x557e3be68500 <str> "!recv_no_log_write", file=file@entry=0x557e3be650a0 "/test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc", line=line@entry=1945, function=function@entry=0x557e3be683e0 <__PRETTY_FUNCTION__._ZL18log_checkpoint_lowmm> "bool log_checkpoint_low(lsn_t, lsn_t)") at ./assert/assert.c:94 #6 0x000015442843b507 in __assert_fail (assertion=0x557e3be68500 <str> "!recv_no_log_write", file=0x557e3be650a0 "/test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc", line=1945, function=0x557e3be683e0 <__PRETTY_FUNCTION__._ZL18log_checkpoint_lowmm> "bool log_checkpoint_low(lsn_t, lsn_t)") at ./assert/assert.c:103 #7 0x0000557e3ab0440b in log_checkpoint_low (oldest_lsn=oldest_lsn@entry=369393, end_lsn=end_lsn@entry=369436)at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:1945 #8 0x0000557e37ff1230 in buf_flush_sync_for_checkpoint (lsn=<optimized out>)at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:2191 #9 0x0000557e3ab0105f in buf_flush_page_cleaner ()at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:2436 #10 0x00001544288eabb4 in std::execute_native_thread_routine (__p=0x502000000190)at ../../../../../src/libstdc++-v3/src/c++11/thread.cc:104 #11 0x0000557e3818d90d in asan_thread_start(void*) () #12 0x000015442849ca94 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447 #13 0x0000154428529c3c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78 And CS 11.8.0 349b8a10274c88887b7b2af24b4200724617611f (Debug) mariadbd: /test/preview-11.8-preview_dbg_san/storage/innobase/mtr/mtr0mtr.cc:487: void mtr_t::commit(): Assertion `!m_modifications || !recv_no_log_write' failed. CS 11.8.0 349b8a10274c88887b7b2af24b4200724617611f (Debug) Core was generated by `/test/preview-11.8-preview_UBASAN_MD110125-mariadb-11.8.0-linux-x86_64-dbg/bin/'. Program terminated with signal SIGABRT, Aborted. #0 __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44   [Current thread is 1 (LWP 860341)] (gdb) bt #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=signo@entry=6)at ./nptl/pthread_kill.c:89 #3 0x000014612284526e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26 #4 0x00001461228288ff in __GI_abort () at ./stdlib/abort.c:79 #5 0x000014612282881b in __assert_fail_base (fmt=0x1461229d01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x55dc52664040 <str> "!recv_no_log_write || srv_operation != SRV_OPERATION_NORMAL", file=file@entry=0x55dc52662be0 "/test/preview-11.8-preview_dbg_san/storage/innobase/log/log0log.cc", line=line@entry=1160, function=function@entry=0x55dc52663ee0 <__PRETTY_FUNCTION__._Z15log_write_up_tombPK19completion_callback> "void log_write_up_to(lsn_t, bool, const completion_callback *)") at ./assert/assert.c:94 #6 0x000014612283b507 in __assert_fail (assertion=0x55dc52664040 <str> "!recv_no_log_write || srv_operation != SRV_OPERATION_NORMAL", file=0x55dc52662be0 "/test/preview-11.8-preview_dbg_san/storage/innobase/log/log0log.cc", line=1160, function=0x55dc52663ee0 <__PRETTY_FUNCTION__._Z15log_write_up_tombPK19completion_callback> "void log_write_up_to(lsn_t, bool, const completion_callback *)") at ./assert/assert.c:103 #7 0x000055dc50f8bfb4 in log_write_up_to (lsn=363554, lsn@entry=363511, durable=true, callback=callback@entry=0x0)at /test/preview-11.8-preview_dbg_san/storage/innobase/log/log0log.cc:1160 #8 0x000055dc51415190 in buf_page_t::flush (this=<optimized out>, space=<optimized out>)at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:755 #9 0x000055dc51420fd3 in buf_do_flush_list_batch (max_n=2000, lsn=363554)at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:1484 #10 buf_flush_list_holding_mutex (max_n=max_n@entry=2000, lsn=lsn@entry=363554)at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:1558 #11 0x000055dc5141a38a in buf_flush_list (max_n=2000, lsn=lsn@entry=363554)at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:1584 #12 0x000055dc4e90ce9d in buf_flush_sync_for_checkpoint (lsn=363554)at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:2172 #13 0x000055dc5141d05f in buf_flush_page_cleaner ()at /test/preview-11.8-preview_dbg_san/storage/innobase/buf/buf0flu.cc:2436 #14 0x0000146122ceabb4 in std::execute_native_thread_routine (__p=0x502000000190)at ../../../../../src/libstdc++-v3/src/c++11/thread.cc:104 #15 0x000055dc4eaa990d in asan_thread_start(void*) () #16 0x000014612289ca94 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447 #17 0x0000146122929c3c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78

            People

              serg Sergei Golubchik
              ramesh Ramesh Sivaraman
              Votes:
              0 Vote for this issue
              Watchers:
              4 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.