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

Race condition around SET GLOBAL innodb_lru_scan_depth

    XMLWordPrintable

Details

    Description

      Random order repeating the following SQL in 5000 threads (use --max_connections=10000):

      CREATE TABLE t2 (c1 INTEGER);
      CREATE TEMPORARY TABLE t1(c1 LONGTEXT NULL);
      DROP TABLE t1;
      DROP TABLE t2;
      INSERT INTO t1  VALUES('a');
      SET @@global.innodb_immediate_scrub_data_uncompressed=0;
      SET @@global.innodb_immediate_scrub_data_uncompressed=1;
      SET @@global.innodb_lru_scan_depth = 1536;
      SET @@global.innodb_lru_scan_depth = 86400;
      XA COMMIT 'a';
      XA END 'a';
      XA PREPARE 'a';
      XA START 'a' RESUME;
      XA START 'a';
      

      Will (after approx 1 to 10 minutes on a fast instance) lead to any of the following:

      CS 11.7.0 4016c905cbabea7f29ed282dc2125254c7c0d419 (Debug)

      Core was generated by `/test/MD141024-mariadb-11.7.0-linux-x86_64-dbg/bin/mariadbd --no-defaults --max'.
      Program terminated with signal SIGSEGV, Segmentation fault.
      #0  std::_Rb_tree_insert_and_rebalance (__insert_left=<optimized out>, __x=0x146ee4033100, __x@entry=0x1472740244a0, __p=<optimized out>, __header=...) at ../../../../../src/libstdc++-v3/src/c++98/tree.cc:282
       
      [Current thread is 1 (LWP 4073354)]
      (gdb) bt
      #0  std::_Rb_tree_insert_and_rebalance (__insert_left=<optimized out>, __x=0x146ee4033100, __x@entry=0x1472740244a0, __p=<optimized out>, __header=@0x5636b6ac5910: {_M_color = std::_S_red, _M_parent = 0x0, _M_left = 0x5636b6ac5910, _M_right = 0x5636b6ac5910})at ../../../../../src/libstdc++-v3/src/c++98/tree.cc:282
      #1  0x00005636b3fd1bd4 in std::_Rb_tree<range_t, range_t, std::_Identity<range_t>, range_compare, std::allocator<range_t> >::_M_insert_node (__z=<optimized out>, __p=<optimized out>, __x=<optimized out>, this=<optimized out>) at /usr/include/c++/13/bits/stl_tree.h:2385
      #2  std::_Rb_tree<range_t, range_t, std::_Identity<range_t>, range_compare, std::allocator<range_t> >::_Auto_node::_M_insert (__p=<optimized out>, this=<optimized out>) at /usr/include/c++/13/bits/stl_tree.h:1657
      #3  std::_Rb_tree<range_t, range_t, std::_Identity<range_t>, range_compare, std::allocator<range_t> >::_M_emplace_unique<range_t&> (this=this@entry=0x5636b6ac5908) at /usr/include/c++/13/bits/stl_tree.h:2437
      #4  0x00005636b3fd36af in std::__cxx1998::set<range_t, range_compare, std::allocator<range_t> >::emplace<range_t&> (this=0x5636b6ac5908)at /usr/include/c++/13/bits/stl_set.h:465
      #5  std::__debug::set<range_t, range_compare, std::allocator<range_t> >::emplace<range_t&> (this=0x5636b6ac58f0) at /usr/include/c++/13/debug/set.h:233
      #6  range_set::add_range (this=0x5636b6ac58f0, new_range={first = 3825414400, last = 5230})at /test/11.7_dbg/storage/innobase/include/fil0fil.h:221
      #7  0x00005636b3ff5c84 in fil_space_t::add_free_range (range=<optimized out>, this=<optimized out>)at /test/11.7_dbg/storage/innobase/include/fil0fil.h:908
      #8  mtr_t::commit (this=this@entry=0x14739fbb1540)at /test/11.7_dbg/storage/innobase/mtr/mtr0mtr.cc:517
      #9  0x00005636b41828c9 in btr_drop_temporary_table (table=@0x147184019ee8: {id = 11919, id_hash = 0x0, name = {m_name = 0x147274025828 "tmp/#sql-temptable-3dfb3d-32-192"}, name_hash = 0x0, heap = 0x1470400305b8, data_dir_path = 0x0, space = 0x5636b6ac57e8, space_id = 4294967294, flags = 33, flags2 = 65, skip_alter_undo = 0, file_unreadable = 0, cached = 1, n_def = 4, n_cols = 4, n_t_cols = 4, n_t_def = 4, n_v_def = 0, n_v_cols = 0, persistent_autoinc = 0, can_be_evicted = 0, corrupted = 0, drop_aborted = 0, cols = 0x147274072c28, v_cols = 0x147274072ca8, s_cols = 0x0, instant = 0x0, col_names = 0x147274072d00 "c1", v_col_names = 0x0, vers_start = 0, vers_end = 0, is_system_db = false, dict_frm_mismatch = DICT_FRM_CONSISTENT, fts_doc_id_index = 0x0, indexes = {count = 1, start = 0x147288061558, end = 0x147288061558, node = &dict_index_t::indexes, init = 51966}, freed_indexes = {count = 0, start = 0x0, end = 0x0, node = &dict_index_t::indexes, init = 51966}, foreign_list = {count = 0, start = 0x0, end = 0x0, node = &dict_foreign_t::heap, init = 0}, referenced_list = {count = 0, start = 0x0, end = 0x0, node = &dict_foreign_t::heap, init = 0}, table_LRU = {prev = 0x14724c020ab8, next = 0x1471000239c8}, fk_max_recusive_level = 0 '\000', def_trx_id = 0, bulk_trx_id = {m = std::atomic<unsigned long> = { 0 }}, mdl_name = {m_name = 0x147274025828 "tmp/#sql-temptable-3dfb3d-32-192"}, foreign_set = std::__debug::set with 0 elements, referenced_set = std::__debug::set with 0 elements, stat_initialized = 1, stats_last_recalc = 0, stat_persistent = 4, stats_auto_recalc = 0, stats_sample_pages = 0, stat_n_rows = 2, stat_clustered_index_size = 1, stat_sum_of_other_index_sizes = 0, stat_modified_counter = 2, stats_error_printed = false, autoinc_lock = 0x147274072ca8, autoinc_mutex = {lock = std::atomic<unsigned int> = { 0 }, static HOLDER = 1, static WAITER = 2}, lock_latch = {<srw_lock_impl<false>> = {pfs_psi = 0x0, lock = {writer = {lock = std::atomic<unsigned int> = { 0 }, static HOLDER = 1, static WAITER = 2}, readers = std::atomic<unsigned int> = { 0 }, static WRITER = 2147483648}}, writer = std::atomic<unsigned long> = { 0 }, readers_lock = {lock = std::atomic<unsigned int> = { 0 }, static HOLDER = 1, static WAITER = 2}, readers = std::atomic<std::__debug::unordered_multiset<unsigned long, std::hash<unsigned long>, std::equal_to<unsigned long>, std::allocator<unsigned long> > *> = { 0x14727404ded0 }}, row_id = {m_counter = std::atomic<unsigned long> = { 2 }}, autoinc = 0, autoinc_trx = {m = std::atomic<const trx_t *> = { 0x0 }}, n_waiting_or_granted_auto_inc_locks = 0, n_lock_x_or_s = 0, fts = 0x0, quiesce = QUIESCE_NONE, n_rec_locks = {m_counter = std::atomic<unsigned int> = { 0 }}, n_ref_count = {m_counter = std::atomic<unsigned int> = { 0 }}, locks = {count = 0, start = 0x0, end = 0x0, node = &lock_table_t::locks, init = 51966}, update_time = {m = std::atomic<long> = { 1728943563 }}, query_cache_inv_trx_id = {m = std::atomic<unsigned long> = { 56750 }}, magic_n = 76333786, vc_templ = 0x0})at /test/11.7_dbg/storage/innobase/btr/btr0btr.cc:1132
      #10 0x00005636b3f139e6 in ha_innobase::delete_table (this=<optimized out>, name=<optimized out>)at /test/11.7_dbg/storage/innobase/handler/ha_innodb.cc:13452
      #11 0x00005636b3b9b675 in hton_drop_table (hton=<optimized out>, path=<optimized out>) at /test/11.7_dbg/sql/handler.cc:585
      #12 0x00005636b3af086f in THD::rm_temporary_table (this=<optimized out>, base=0x5636b63d2898, path=0x1472740729a8 "/test/MD141024-mariadb-11.7.0-linux-x86_64-dbg/tmp/#sql-temptable-3dfb3d-32-192") at /test/11.7_dbg/sql/temporary_tables.cc:707
      #13 0x00005636b3af0ff4 in THD::free_tmp_table_share (this=this@entry=0x147274000d58, share=share@entry=0x147274072318, delete_table=delete_table@entry=true)at /test/11.7_dbg/sql/temporary_tables.cc:1488
      #14 0x00005636b3af2819 in THD::drop_temporary_table (this=this@entry=0x147274000d58, table=<optimized out>, is_trans=is_trans@entry=0x14739fbb2477, delete_table=delete_table@entry=true)at /test/11.7_dbg/sql/temporary_tables.cc:675
      #15 0x00005636b394dede in mysql_rm_table_no_locks (thd=thd@entry=0x147274000d58, tables=tables@entry=0x14727401aac8, current_db=current_db@entry=0x147274000df8, ddl_log_state=0x14739fbb24d0, ddl_log_state@entry=0x0, if_exists=if_exists@entry=false, drop_temporary=drop_temporary@entry=false, drop_view=false, drop_sequence=false, dont_log_query=false, dont_free_locks=false)at /test/11.7_dbg/sql/sql_table.cc:1462
      #16 0x00005636b395047f in mysql_rm_table (thd=thd@entry=0x147274000d58, tables=tables@entry=0x14727401aac8, if_exists=false, drop_temporary=false, drop_sequence=false, dont_log_query=dont_log_query@entry=false)at /test/11.7_dbg/sql/sql_table.cc:1210
      #17 0x00005636b38686fb in mysql_execute_command (thd=thd@entry=0x147274000d58, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false)at /test/11.7_dbg/sql/sql_parse.cc:4771
      #18 0x00005636b386cd36 in mysql_parse (thd=thd@entry=0x147274000d58, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x14739fbb3260)at /test/11.7_dbg/sql/sql_parse.cc:7885
      #19 0x00005636b386f1ee in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x147274000d58, packet=packet@entry=0x14727400b339 "DROP TABLE t1", packet_length=packet_length@entry=13, blocking=blocking@entry=true)at /test/11.7_dbg/sql/sql_class.h:257
      #20 0x00005636b3871552 in do_command (thd=0x147274000d58, blocking=blocking@entry=true) at /test/11.7_dbg/sql/sql_parse.cc:1405
      #21 0x00005636b39eae5f in do_handle_one_connection (connect=<optimized out>, connect@entry=0x5636b6d3f438, put_in_cache=put_in_cache@entry=true)at /test/11.7_dbg/sql/sql_connect.cc:1448
      #22 0x00005636b39eb173 in handle_one_connection (arg=arg@entry=0x5636b6d3f438)at /test/11.7_dbg/sql/sql_connect.cc:1350
      #23 0x00005636b3e40bcf in pfs_spawn_thread (arg=0x5636b6dda548)at /test/11.7_dbg/storage/perfschema/pfs.cc:2198
      #24 0x00001473b549ca94 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447
      #25 0x00001473b5529c3c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
      

      Or

      CS 11.7.0 4016c905cbabea7f29ed282dc2125254c7c0d419 (Debug)

      mariadbd: /test/11.7_dbg/storage/innobase/buf/buf0lru.cc:400: buf_block_t* buf_LRU_get_free_block(buf_LRU_get): Assertion `LRU_size <= 256 || available >= scan_depth || buf_pool.need_LRU_eviction()' failed.
      

      CS 11.7.0 4016c905cbabea7f29ed282dc2125254c7c0d419 (Debug)

      Core was generated by `/test/MD141024-mariadb-11.7.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 2573058)]
      (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  0x00001504d224526e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26
      #4  0x00001504d22288ff in __GI_abort () at ./stdlib/abort.c:79
      #5  0x00001504d222881b in __assert_fail_base (fmt=0x1504d23d01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x563ddcc189b0 "LRU_size <= 256 || available >= scan_depth || buf_pool.need_LRU_eviction()", file=file@entry=0x563ddcc17f48 "/test/11.7_dbg/storage/innobase/buf/buf0lru.cc", line=line@entry=400, function=function@entry=0x563ddcc18a00 "buf_block_t* buf_LRU_get_free_block(buf_LRU_get)") at ./assert/assert.c:94
      #6  0x00001504d223b507 in __assert_fail (assertion=0x563ddcc189b0 "LRU_size <= 256 || available >= scan_depth || buf_pool.need_LRU_eviction()", file=0x563ddcc17f48 "/test/11.7_dbg/storage/innobase/buf/buf0lru.cc", line=400, function=0x563ddcc18a00 "buf_block_t* buf_LRU_get_free_block(buf_LRU_get)")at ./assert/assert.c:103
      #7  0x0000563ddc705a0b in buf_LRU_get_free_block (get=get@entry=have_no_mutex)at /test/11.7_dbg/storage/innobase/buf/buf0lru.cc:400
      #8  0x0000563ddc78ca98 in fsp_page_create (space=space@entry=0x563ddf5857e8, offset=offset@entry=137, mtr=mtr@entry=0x1504d01fbd70)at /test/11.7_dbg/storage/innobase/fsp/fsp0fsp.cc:1059
      #9  0x0000563ddc791256 in fsp_alloc_free_page (space=space@entry=0x563ddf5857e8, hint=<optimized out>, hint@entry=0, mtr=mtr@entry=0x1504d01fbd70, init_mtr=init_mtr@entry=0x1504d01fbd70, err=err@entry=0x1504d01fbcdc)at /test/11.7_dbg/storage/innobase/fsp/fsp0fsp.cc:1184
      #10 0x0000563ddc792820 in fseg_alloc_free_page_low (space=space@entry=0x563ddf5857e8, seg_inode=seg_inode@entry=0x1504b78fe8b2 "", iblock=iblock@entry=0x1504b7803190, hint=hint@entry=0, direction=direction@entry=111 'o', has_done_reservation=has_done_reservation@entry=true, mtr=0x1504d01fbd70, init_mtr=0x1504d01fbd70, err=0x1504d01fbcdc)at /test/11.7_dbg/storage/innobase/fsp/fsp0fsp.cc:2167
      #11 0x0000563ddc793fb0 in fseg_create (space=space@entry=0x563ddf5857e8, byte_offset=byte_offset@entry=60, mtr=mtr@entry=0x1504d01fbd70, err=err@entry=0x1504d01fbcdc, has_done_reservation=has_done_reservation@entry=true, block=<optimized out>, block@entry=0x0)at /test/11.7_dbg/storage/innobase/fsp/fsp0fsp.cc:1759
      #12 0x0000563ddc677264 in trx_undo_seg_create (space=0x563ddf5857e8, rseg_hdr=rseg_hdr@entry=0x1504b76005b0, id=id@entry=0x1504d01fbbc8, err=err@entry=0x1504d01fbcdc, mtr=mtr@entry=0x1504d01fbd70)at /test/11.7_dbg/storage/innobase/trx/trx0undo.cc:493
      #13 0x0000563ddc6773cb in trx_undo_create (trx=trx@entry=0x1504d0207f00, rseg=rseg@entry=0x563ddd50ab80 <trx_sys+14976>, undo=undo@entry=0x1504d02088c0, err=err@entry=0x1504d01fbcdc, mtr=mtr@entry=0x1504d01fbd70)at /test/11.7_dbg/storage/innobase/trx/trx0undo.cc:1218
      #14 0x0000563ddc678a99 in trx_undo_assign_low<true> (trx=trx@entry=0x1504d0207f00, rseg=rseg@entry=0x563ddd50ab80 <trx_sys+14976>, undo=undo@entry=0x1504d02088c0, mtr=mtr@entry=0x1504d01fbd70, err=err@entry=0x1504d01fbcdc)at /test/11.7_dbg/storage/innobase/trx/trx0undo.cc:1421
      #15 0x0000563ddc64f8f4 in trx_undo_report_row_operation (thr=thr@entry=0x1503f004ae68, index=index@entry=0x1503f00216d8, clust_entry=clust_entry@entry=0x1503f0028608, update=update@entry=0x0, cmpl_info=cmpl_info@entry=0, rec=rec@entry=0x0, offsets=0x0, roll_ptr=0x1504d01fc1a0)at /test/11.7_dbg/storage/innobase/trx/trx0rec.cc:1890
      #16 0x0000563ddc6a60be in btr_cur_ins_lock_and_undo (flags=flags@entry=2, cursor=cursor@entry=0x1504d01fc680, entry=entry@entry=0x1503f0028608, thr=thr@entry=0x1503f004ae68, mtr=mtr@entry=0x1504d01fcc00, inherit=inherit@entry=0x1504d01fc286)at /test/11.7_dbg/storage/innobase/btr/btr0cur.cc:2200
      #17 0x0000563ddc6ad07a in btr_cur_optimistic_insert (flags=flags@entry=2, cursor=cursor@entry=0x1504d01fc680, offsets=offsets@entry=0x1504d01fc668, heap=heap@entry=0x1504d01fc660, entry=entry@entry=0x1503f0028608, rec=rec@entry=0x1504d01fc678, big_rec=0x1504d01fc658, n_ext=<optimized out>, thr=0x1503f004ae68, mtr=0x1504d01fcc00)at /test/11.7_dbg/storage/innobase/btr/btr0cur.cc:2424
      #18 0x0000563ddc58d350 in row_ins_clust_index_entry_low (flags=flags@entry=2, mode=mode@entry=BTR_MODIFY_LEAF, index=index@entry=0x1503f00216d8, n_uniq=n_uniq@entry=0, entry=entry@entry=0x1503f0028608, n_ext=n_ext@entry=0, thr=0x1503f004ae68)at /test/11.7_dbg/storage/innobase/row/row0ins.cc:2882
      #19 0x0000563ddc58eaca in row_ins_clust_index_entry (index=index@entry=0x1503f00216d8, entry=entry@entry=0x1503f0028608, thr=thr@entry=0x1503f004ae68, n_ext=n_ext@entry=0)at /test/11.7_dbg/storage/innobase/row/row0ins.cc:3267
      #20 0x0000563ddc59096f in row_ins_index_entry (thr=0x1503f004ae68, entry=0x1503f0028608, index=0x1503f00216d8)at /test/11.7_dbg/storage/innobase/row/row0ins.cc:3402
      #21 row_ins_index_entry_step (thr=0x1503f004ae68, node=0x1503f004ac08)at /test/11.7_dbg/storage/innobase/row/row0ins.cc:3570
      #22 row_ins (thr=0x1503f004ae68, node=0x1503f004ac08)at /test/11.7_dbg/storage/innobase/row/row0ins.cc:3687
      #23 row_ins_step (thr=thr@entry=0x1503f004ae68)at /test/11.7_dbg/storage/innobase/row/row0ins.cc:3816
      #24 0x0000563ddc5b6f85 in row_insert_for_mysql (mysql_rec=mysql_rec@entry=0x1503f004ef38 "\376\001", prebuilt=0x1503f004a778, ins_mode=ins_mode@entry=ROW_INS_NORMAL)at /test/11.7_dbg/storage/innobase/row/row0mysql.cc:1290
      #25 0x0000563ddc40e057 in ha_innobase::write_row (this=0x1503f004d250, record=0x1503f004ef38 "\376\001")at /test/11.7_dbg/storage/innobase/handler/ha_innodb.cc:7767
      #26 0x0000563ddc09a995 in handler::ha_write_row (this=0x1503f004d250, buf=0x1503f004ef38 "\376\001") at /test/11.7_dbg/sql/handler.cc:8086
      #27 0x0000563ddbd1e4ef in write_record (thd=thd@entry=0x1503f0000d58, table=table@entry=0x1503f0049c98, info=info@entry=0x1504d01fda50, sink=sink@entry=0x0) at /test/11.7_dbg/sql/sql_insert.cc:2320
      #28 0x0000563ddbd2928b in mysql_insert (thd=thd@entry=0x1503f0000d58, table_list=0x1503f001aaf8, fields=@0x1503f0006198: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x563ddd5cc500 <end_of_list>, last = 0x1503f0006198, elements = 0}, <No data fields>}, values_list=@0x1503f00061e0: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x1503f001b780, last = 0x1503f001b780, elements = 1}, <No data fields>}, update_fields=@0x1503f00061c8: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x563ddd5cc500 <end_of_list>, last = 0x1503f00061c8, elements = 0}, <No data fields>}, update_values=@0x1503f00061b0: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x563ddd5cc500 <end_of_list>, last = 0x1503f00061b0, elements = 0}, <No data fields>}, duplic=DUP_ERROR, ignore=false, result=0x0)at /test/11.7_dbg/sql/sql_insert.cc:1177
      #29 0x0000563ddbd659f8 in mysql_execute_command (thd=thd@entry=0x1503f0000d58, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false)at /test/11.7_dbg/sql/sql_parse.cc:4459
      #30 0x0000563ddbd6ad36 in mysql_parse (thd=thd@entry=0x1503f0000d58, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x1504d01fe260)at /test/11.7_dbg/sql/sql_parse.cc:7885
      #31 0x0000563ddbd6d1ee in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x1503f0000d58, packet=packet@entry=0x1503f000b339 "INSERT INTO t1  VALUES('a')", packet_length=packet_length@entry=27, blocking=blocking@entry=true)at /test/11.7_dbg/sql/sql_class.h:257
      #32 0x0000563ddbd6f552 in do_command (thd=0x1503f0000d58, blocking=blocking@entry=true) at /test/11.7_dbg/sql/sql_parse.cc:1405
      #33 0x0000563ddbee8e5f in do_handle_one_connection (connect=<optimized out>, connect@entry=0x563ddf79dd58, put_in_cache=put_in_cache@entry=true)at /test/11.7_dbg/sql/sql_connect.cc:1448
      #34 0x0000563ddbee9173 in handle_one_connection (arg=arg@entry=0x563ddf79dd58)at /test/11.7_dbg/sql/sql_connect.cc:1350
      #35 0x0000563ddc33ebcf in pfs_spawn_thread (arg=0x563ddf79ee88)at /test/11.7_dbg/storage/perfschema/pfs.cc:2198
      #36 0x00001504d229ca94 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447
      #37 0x00001504d2329c3c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
      

      Or

      CS 11.7.0 4016c905cbabea7f29ed282dc2125254c7c0d419 (Debug)

      Core was generated by `/test/MD141024-mariadb-11.7.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 3056780)]
      (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  0x000014d48904526e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26
      #4  0x000014d4890288ff in __GI_abort () at ./stdlib/abort.c:79
      #5  0x000014d4894a9133 in __gnu_debug::_Error_formatter::_M_error (this=this@entry=0x5588d33ec7e0 <__gnu_debug::_Error_formatter::_S_at(char const*, unsigned int, char const*)::__formatter>)at ../../../../../src/libstdc++-v3/src/c++11/debug.cc:1320
      #6  0x00005588d22ebb28 in __gnu_debug::operator== (__lhs={first = 142, last = 143}, __rhs={first = 0, last = 0})at /usr/include/c++/13/debug/safe_iterator.h:472
      #7  0x00005588d22f4681 in range_set::add_range (this=0x5588d4e198f0, new_range={first = 3056780, last = 0})at /test/11.7_dbg/storage/innobase/include/fil0fil.h:234
      #8  0x00005588d2316c84 in fil_space_t::add_free_range (range=<optimized out>, this=<optimized out>)at /test/11.7_dbg/storage/innobase/include/fil0fil.h:908
      #9  mtr_t::commit (this=this@entry=0x14d473bb1540)at /test/11.7_dbg/storage/innobase/mtr/mtr0mtr.cc:517
      #10 0x00005588d24a38c9 in btr_drop_temporary_table (table=Python Exception <class 'AttributeError'>: 'NoneType' object has no attribute 'pointer'
      Python Exception <class 'AttributeError'>: 'NoneType' object has no attribute 'pointer'
      @0x14d3b00284c8: {id = 468, id_hash = 0x0, name = {m_name = 0x14d3a80274d8 "tmp/#sql-temptable-2e7672-1a-47"}, name_hash = 0x0, heap = 0x14d3b4042bc8, data_dir_path = 0x0, space = 0x5588d4e197e8, space_id = 4294967294, flags = 33, flags2 = 65, skip_alter_undo = 0, file_unreadable = 0, cached = 1, n_def = 4, n_cols = 4, n_t_cols = 4, n_t_def = 4, n_v_def = 0, n_v_cols = 0, persistent_autoinc = 0, can_be_evicted = 0, corrupted = 0, drop_aborted = 0, cols = 0x14d3a803e0e8, v_cols = 0x14d3a803e168, s_cols = 0x0, instant = 0x0, col_names = 0x14d3a803e1c0 "c1", v_col_names = 0x0, vers_start = 0, vers_end = 0, is_system_db = false, dict_frm_mismatch = DICT_FRM_CONSISTENT, fts_doc_id_index = 0x0, indexes = {count = 1, start = 0x14d3b40216d8, end = 0x14d3b40216d8, node = &dict_index_t::indexes, init = 51966}, freed_indexes = {count = 0, start = 0x0, end = 0x0, node = &dict_index_t::indexes, init = 51966}, foreign_list = {count = 0, start = 0x0, end = 0x0, node = &dict_foreign_t::heap, init = 0}, referenced_list = {count = 0, start = 0x0, end = 0x0, node = &dict_foreign_t::heap, init = 0}, table_LRU = {prev = 0x14d3f802a5b8, next = 0x14d3bc0405d8}, fk_max_recusive_level = 0 '\000', def_trx_id = 0, bulk_trx_id = {m = std::atomic<unsigned long> = { 0 }}, mdl_name = {m_name = 0x14d3a80274d8 "tmp/#sql-temptable-2e7672-1a-47"}, foreign_set = std::__debug::set with 0 elements, referenced_set = std::__debug::set with 0 elements, stat_initialized = 1, stats_last_recalc = 0, stat_persistent = 4, stats_auto_recalc = 0, stats_sample_pages = 0, stat_n_rows = 3, stat_clustered_index_size = 1, stat_sum_of_other_index_sizes = 0, stat_modified_counter = 3, stats_error_printed = false, autoinc_lock = 0x14d3a803e168, autoinc_mutex = {lock = std::atomic<unsigned int> = { 0 }, static HOLDER = 1, static WAITER = 2}, lock_latch = {<srw_lock_impl<false>> = {pfs_psi = 0x0, lock = {writer = {lock = std::atomic<unsigned int> = { 0 }, static HOLDER = 1, static WAITER = 2}, readers = std::atomic<unsigned int> = { 0 }, static WRITER = 2147483648}}, writer = std::atomic<unsigned long> = { 0 }, readers_lock = {lock = std::atomic<unsigned int> = { 0 }, static HOLDER = 1, static WAITER = 2}, readers = std::atomic<class std::__debug::unordered_multiset<unsigned long, std::hash<unsigned long>, std::equal_to<unsigned long>, std::allocator<unsigned long> > *> = { 0x14d3a803c4f0 }}, row_id = {m_counter = std::atomic<unsigned long> = { 3 }}, autoinc = 0, autoinc_trx = {m = std::atomic<const struct trx_t *> = { 0x0 }}, n_waiting_or_granted_auto_inc_locks = 0, n_lock_x_or_s = 0, fts = 0x0, quiesce = QUIESCE_NONE, n_rec_locks = {m_counter = std::atomic<unsigned int> = { 0 }}, n_ref_count = {m_counter = std::atomic<unsigned int> = { 0 }}, locks = {count = 0, start = 0x0, end = 0x0, node = &lock_table_t::locks, init = 51966}, update_time = {m = std::atomic<long> = { 1728942858 }}, query_cache_inv_trx_id = {m = std::atomic<unsigned long> = { 2448 }}, magic_n = 76333786, vc_templ = 0x0})at /test/11.7_dbg/storage/innobase/btr/btr0btr.cc:1132
      #11 0x00005588d22349e6 in ha_innobase::delete_table (this=<optimized out>, name=<optimized out>)at /test/11.7_dbg/storage/innobase/handler/ha_innodb.cc:13452
      #12 0x00005588d1ebc675 in hton_drop_table (hton=<optimized out>, path=<optimized out>) at /test/11.7_dbg/sql/handler.cc:585
      #13 0x00005588d1e1186f in THD::rm_temporary_table (this=<optimized out>, base=0x5588d4726898, path=0x14d3a803b568 "/test/MD141024-mariadb-11.7.0-linux-x86_64-dbg/tmp/#sql-temptable-2e7672-1a-47") at /test/11.7_dbg/sql/temporary_tables.cc:707
      #14 0x00005588d1e11ff4 in THD::free_tmp_table_share (this=this@entry=0x14d3a8000d58, share=share@entry=0x14d3a803aed8, delete_table=delete_table@entry=true)at /test/11.7_dbg/sql/temporary_tables.cc:1488
      #15 0x00005588d1e13819 in THD::drop_temporary_table (this=this@entry=0x14d3a8000d58, table=<optimized out>, is_trans=is_trans@entry=0x14d473bb2477, delete_table=delete_table@entry=true)at /test/11.7_dbg/sql/temporary_tables.cc:675
      #16 0x00005588d1c6eede in mysql_rm_table_no_locks (thd=thd@entry=0x14d3a8000d58, tables=tables@entry=0x14d3a801aac8, current_db=current_db@entry=0x14d3a8000df8, ddl_log_state=0x14d473bb24d0, ddl_log_state@entry=0x0, if_exists=if_exists@entry=false, drop_temporary=drop_temporary@entry=false, drop_view=false, drop_sequence=false, dont_log_query=false, dont_free_locks=false)at /test/11.7_dbg/sql/sql_table.cc:1462
      #17 0x00005588d1c7147f in mysql_rm_table (thd=thd@entry=0x14d3a8000d58, tables=tables@entry=0x14d3a801aac8, if_exists=false, drop_temporary=false, drop_sequence=false, dont_log_query=dont_log_query@entry=false)at /test/11.7_dbg/sql/sql_table.cc:1210
      #18 0x00005588d1b896fb in mysql_execute_command (thd=thd@entry=0x14d3a8000d58, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false)at /test/11.7_dbg/sql/sql_parse.cc:4771
      #19 0x00005588d1b8dd36 in mysql_parse (thd=thd@entry=0x14d3a8000d58, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x14d473bb3260)at /test/11.7_dbg/sql/sql_parse.cc:7885
      #20 0x00005588d1b901ee in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x14d3a8000d58, packet=packet@entry=0x14d3a800b339 "DROP TABLE t1", packet_length=packet_length@entry=13, blocking=blocking@entry=true)at /test/11.7_dbg/sql/sql_class.h:257
      #21 0x00005588d1b92552 in do_command (thd=0x14d3a8000d58, blocking=blocking@entry=true) at /test/11.7_dbg/sql/sql_parse.cc:1405
      #22 0x00005588d1d0be5f in do_handle_one_connection (connect=<optimized out>, connect@entry=0x5588d5093438, put_in_cache=put_in_cache@entry=true)at /test/11.7_dbg/sql/sql_connect.cc:1448
      #23 0x00005588d1d0c173 in handle_one_connection (arg=arg@entry=0x5588d5093438)at /test/11.7_dbg/sql/sql_connect.cc:1350
      #24 0x00005588d2161bcf in pfs_spawn_thread (arg=0x5588d512b5c8)at /test/11.7_dbg/storage/perfschema/pfs.cc:2198
      #25 0x000014d48909ca94 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447
      #26 0x000014d489129c3c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
      

      Please note that the SIGABRT in __gnu_debug::_Error_formatter::_M_error is definitely single-SQL-input-thread reproducible, given sufficient iterations (given overall sporadicity).

      10.5 Does not seem to be affected.

      Attachments

        Activity

          People

            marko Marko Mäkelä
            Roel Roel Van de Paar
            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.