Details
-
Bug
-
Status: Open (View Workflow)
-
Major
-
Resolution: Unresolved
-
10.6
Description
This reduced but unfinished testcase:
# mysqld options used (likely many or most are not required): --max_allowed_packet=33554432 --maximum-bulk_insert_buffer_size=1M --maximum-join_buffer_size=1M --maximum-max_heap_table_size=1M --maximum-max_join_size=1M --maximum-myisam_max_sort_file_size=1M --maximum-myisam_mmap_size=1M --maximum-myisam_sort_buffer_size=1M --maximum-optimizer_trace_max_mem_size=1M --maximum-preload_buffer_size=1M --maximum-query_alloc_block_size=1M --maximum-query_prealloc_size=1M --maximum-range_alloc_block_size=1M --maximum-read_buffer_size=1M --maximum-read_rnd_buffer_size=1M --maximum-sort_buffer_size=1M --maximum-tmp_table_size=1M --maximum-transaction_alloc_block_size=1M --maximum-transaction_prealloc_size=1M --log-output=none --sql_mode=ONLY_FULL_GROUP_BY --innodb_file_per_table=1 --innodb_flush_method=O_DIRECT --innodb_stats_persistent=off --loose-idle_write_transaction_timeout=0 --loose-idle_transaction_timeout=0 --loose-idle_readonly_transaction_timeout=0 --connect_timeout=60 --interactive_timeout=28800 --slave_net_timeout=60 --net_read_timeout=30 --net_write_timeout=60 --loose-table_lock_wait_timeout=50 --wait_timeout=28800 --lock-wait-timeout=86400 --innodb-lock-wait-timeout=50 --log_output=FILE --log-bin --log_bin_trust_function_creators=1 --loose-max-statement-time=30 --loose-debug_assert_on_not_freed_memory=0 --innodb-buffer-pool-size=300M
|
SET GLOBAL innodb_stats_persistent=1;#NOERROR
|
SET GLOBAL innodb_change_buffering_debug=1;#NOERROR
|
SET @@GLOBAL.innodb_limit_optimistic_insert_debug = 2;#NOERROR
|
CREATE TABLE t1(c1 DATE NULL, c2 BINARY(25) NOT NULL, c3 SMALLINT(4) NULL, c4 BINARY(15) NOT NULL PRIMARY KEY, c5 DATE NOT NULL UNIQUE KEY,c6 NUMERIC(10,8) NOT NULL DEFAULT 3.141592);#NOERROR
|
ALTER TABLE t1 MODIFY COLUMN c2 YEAR(2); ;
|
SELECT SLEEP(3); # Likely not required
|
Has at least once lead to:
10.6.0 9118fd360a3da0bba521caf2a35c424968235ac4 (Debug) |
Core was generated by `/test/MD010121-mariadb-10.6.0-linux-x86_64-dbg/bin/mysqld --no-defaults --max_a'.
|
Program terminated with signal SIGABRT, Aborted.
|
#0 __pthread_kill (threadid=<optimized out>, signo=signo@entry=6)
|
at ../sysdeps/unix/sysv/linux/pthread_kill.c:56
|
[Current thread is 1 (Thread 0x1497a59f0700 (LWP 3581261))]
|
(gdb) bt
|
#0 __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:56
|
#1 0x000055c8bec6a0d7 in my_write_core (sig=sig@entry=6) at /test/10.6_dbg/mysys/stacktrace.c:424
|
#2 0x000055c8be3feab1 in handle_fatal_signal (sig=6) at /test/10.6_dbg/sql/signal_handler.cc:330
|
#3 <signal handler called>
|
#4 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
|
#5 0x00001497da723859 in __GI_abort () at abort.c:79
|
#6 0x000055c8bea4b263 in ib::fatal::~fatal (this=<optimized out>, __in_chrg=<optimized out>) at /test/10.6_dbg/storage/innobase/ut/ut0ut.cc:573
|
#7 0x000055c8be9f4b88 in srv_monitor_task () at /test/10.6_dbg/storage/innobase/include/ut0ut.h:412
|
#8 0x000055c8bebf55a0 in tpool::thread_pool_generic::timer_generic::run (this=0x55c8c22e4cc0) at /test/10.6_dbg/tpool/tpool_generic.cc:309
|
#9 tpool::thread_pool_generic::timer_generic::execute (arg=0x55c8c22e4cc0) at /test/10.6_dbg/tpool/tpool_generic.cc:329
|
#10 0x000055c8bebf650f in tpool::task::execute (this=0x55c8c22e4d00) at /test/10.6_dbg/tpool/task.cc:52
|
#11 0x000055c8bebf50b9 in tpool::thread_pool_generic::worker_main (this=0x55c8c1b7ee40, thread_var=0x55c8c1b8e5e0) at /test/10.6_dbg/tpool/tpool_generic.cc:546
|
#12 0x000055c8bebf53f2 in std::__invoke_impl<void, void (tpool::thread_pool_generic::*)(tpool::worker_data*), tpool::thread_pool_generic*, tpool::worker_data*> (__t=<optimized out>, __f=<optimized out>) at /usr/include/c++/9/bits/invoke.h:89
|
#13 std::__invoke<void (tpool::thread_pool_generic::*)(tpool::worker_data*), tpool::thread_pool_generic*, tpool::worker_data*> (__fn=<optimized out>) at /usr/include/c++/9/bits/invoke.h:95
|
#14 std::thread::_Invoker<std::tuple<void (tpool::thread_pool_generic::*)(tpool::worker_data*), tpool::thread_pool_generic*, tpool::worker_data*> >::_M_invoke<0ul, 1ul, 2ul> (this=<optimized out>) at /usr/include/c++/9/thread:244
|
#15 std::thread::_Invoker<std::tuple<void (tpool::thread_pool_generic::*)(tpool::worker_data*), tpool::thread_pool_generic*, tpool::worker_data*> >::operator() (this=<optimized out>) at /usr/include/c++/9/thread:251
|
#16 std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (tpool::thread_pool_generic::*)(tpool::worker_data*), tpool::thread_pool_generic*, tpool::worker_data*> > >::_M_run (this=<optimized out>) at /usr/include/c++/9/thread:195
|
#17 0x00001497dab15d84 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
|
#18 0x00001497dac31609 in start_thread (arg=<optimized out>) at pthread_create.c:477
|
#19 0x00001497da820293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
|
However the bug is extremely hard to reproduce.
The original run also had this in the error log, though it is not clear if this would still show with the reduced testcase (likely, but not certain):
10.6.0 9118fd360a3da0bba521caf2a35c424968235ac4 (Debug) |
2021-01-16 17:25:21 0 [ERROR] [FATAL] InnoDB: innodb_fatal_semaphore_wait_threshold was exceeded for dict_sys.mutex. Please refer to https://mariadb.com/kb/en/how-to-produce-a-full-stack-trace-for-mysqld/
|
210116 17:25:21 [ERROR] mysqld got signal 6 ;
|
Attachments
Issue Links
- relates to
-
MDEV-24669 implement innodb_fatal_semaphore_wait_threshold as systemd watchdog task
- Open
-
MDEV-32371 Deadlock between buf_page_get_zip() and buf_pool_t::corrupted_evict() on InnoDB ROW_FORMAT=COMPRESSED table corruption
- Closed
-
MDEV-25072 Hang + Heap Corruption: SIGABRT in __libc_message from _int_free on DBUGCloseFile
- Closed
-
MDEV-26445 innodb_undo_log_truncate is unnecessarily slow
- Closed
-
MDEV-26491 SIGABRT when setting innodb_disallow_writes and --innodb-fatal-semaphore-wait-threshold=2 and attempting DROP TABLE
- Closed