[MDEV-29236] Assertion `state_ == s_exec || state_ == s_quitting' failed in void wsrep::client_state::disable_streaming() Created: 2022-08-03  Updated: 2023-11-28

Status: Open
Project: MariaDB Server
Component/s: Galera
Affects Version/s: 10.10
Fix Version/s: 10.11

Type: Bug Priority: Major
Reporter: Ramesh Sivaraman Assignee: Seppo Jaakola
Resolution: Unresolved Votes: 0
Labels: debug


 Description   

The crash is from Galera multi-threaded pquery run. Similar issue was present when setting wsrep_trx_fragment_size using single thread and it was fixed in MDEV-24596

10.10.0 c360eadb8c92624419b94ec0601ebf3e6bb64374

mysqld: /test/mtest/10.10/wsrep-lib/src/client_state.cpp:357: void wsrep::client_state::disable_streaming(): Assertion `state_ == s_exec || state_ == s_quitting' failed.

10.10.0 c360eadb8c92624419b94ec0601ebf3e6bb64374

Core was generated by `/test/mtest/10.10/mariadb-10.10.0-linux-x86_64/bin/mysqld --defaults-file=/dev/'.
Program terminated with signal SIGABRT, Aborted.
#0  0x0000000070000002 in ?? ()
[Current thread is 1 (Thread 0x2ee35ceb6700 (LWP 3991327))]
(gdb) bt
#0  0x0000000070000002 in ?? ()
#1  0x000059904b9a61a4 in _raw_syscall () at /home/roc/rr/rr/src/preload/raw_syscall.S:120
#2  0x000059904b9a12ce in traced_raw_syscall (call=<optimized out>) at /home/roc/rr/rr/src/preload/syscallbuf.c:278
#3  0x000059904b9a50d3 in syscall_hook_internal (call=0x147bf49c6fa0) at /home/roc/rr/rr/src/preload/syscallbuf.c:3420
#4  syscall_hook (call=0x147bf49c6fa0) at /home/roc/rr/rr/src/preload/syscallbuf.c:3454
#5  0x000059904b9a10b0 in _syscall_hook_trampoline () at /home/roc/rr/rr/src/preload/syscall_hook.S:313
#6  0x000059904b9a110f in __morestack () at /home/roc/rr/rr/src/preload/syscall_hook.S:458
#7  0x000059904b9a1169 in _syscall_hook_trampoline_89_c2_f7_da () at /home/roc/rr/rr/src/preload/syscall_hook.S:512
#8  0x0000705478c5ef0c in __pthread_kill (threadid=<optimized out>, signo=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:56
#9  0x000055a7dbf7ce7a in my_write_core (sig=6) at /test/mtest/10.10/mysys/stacktrace.c:424
#10 0x000055a7db6d1443 in handle_fatal_signal (sig=6) at /test/mtest/10.10/sql/signal_handler.cc:345
#11 <signal handler called>
#12 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#13 0x00007dfc12c6d859 in __GI_abort () at abort.c:79
#14 0x00007dfc12c6d729 in __assert_fail_base (fmt=0x7dfc12e03588 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x55a7dc664438 "state_ == s_exec || state_ == s_quitting", file=0x55a7dc663b38 "/test/mtest/10.10/wsrep-lib/src/client_state.cpp", line=357, function=<optimized out>) at assert.c:92
#15 0x00007dfc12c7ef36 in __GI___assert_fail (assertion=0x55a7dc664438 "state_ == s_exec || state_ == s_quitting", file=0x55a7dc663b38 "/test/mtest/10.10/wsrep-lib/src/client_state.cpp", line=357, function=0x55a7dc664408 "void wsrep::client_state::disable_streaming()") at assert.c:101
#16 0x000055a7dc032e56 in wsrep::client_state::disable_streaming (this=0x5e3850007650) at /test/mtest/10.10/wsrep-lib/src/client_state.cpp:357
#17 0x000055a7dba969f4 in wsrep_trx_fragment_size_update (self=0x55a7dccc1f40 <Sys_wsrep_trx_fragment_size>, thd=0x5e3850000db8) at /test/mtest/10.10/sql/wsrep_var.cc:916
#18 0x000055a7db1d3bf0 in sys_var::update (this=0x55a7dccc1f40 <Sys_wsrep_trx_fragment_size>, thd=0x5e3850000db8, var=0x5e3850015250) at /test/mtest/10.10/sql/set_var.cc:208
#19 0x000055a7db1d42fe in sys_var::set_default (this=0x55a7dccc1f40 <Sys_wsrep_trx_fragment_size>, thd=0x5e3850000db8, var=0x5e3850015250) at /test/mtest/10.10/sql/set_var.cc:293
#20 0x000055a7db1d5b82 in set_var::update (this=0x5e3850015250, thd=0x5e3850000db8) at /test/mtest/10.10/sql/set_var.cc:863
#21 0x000055a7db1d5679 in sql_set_variables (thd=0x5e3850000db8, var_list=0x5e38500060f0, free=true) at /test/mtest/10.10/sql/set_var.cc:745
#22 0x000055a7db30a17a in mysql_execute_command (thd=0x5e3850000db8, is_called_from_prepared_stmt=false) at /test/mtest/10.10/sql/sql_parse.cc:5033
#23 0x000055a7db313dd8 in mysql_parse (thd=0x5e3850000db8, rawbuf=0x5e3850015140 "SET GLOBAL wsrep_trx_fragment_size=DEFAULT", length=42, parser_state=0x2ee35ceb5480) at /test/mtest/10.10/sql/sql_parse.cc:8036
#24 0x000055a7db3001ef in dispatch_command (command=COM_QUERY, thd=0x5e3850000db8, packet=0x5e385000cfe9 "SET GLOBAL wsrep_trx_fragment_size=DEFAULT;", packet_length=43, blocking=true) at /test/mtest/10.10/sql/sql_parse.cc:1894
#25 0x000055a7db2febd0 in do_command (thd=0x5e3850000db8, blocking=true) at /test/mtest/10.10/sql/sql_parse.cc:1407
#26 0x000055a7db4dcfa5 in do_handle_one_connection (connect=0x55a7df3a5608, put_in_cache=true) at /test/mtest/10.10/sql/sql_connect.cc:1418
#27 0x000055a7db4dcc35 in handle_one_connection (arg=0x55a7df3a5608) at /test/mtest/10.10/sql/sql_connect.cc:1312
#28 0x000055a7db9f3025 in pfs_spawn_thread (arg=0x55a7df3b66a8) at /test/mtest/10.10/storage/perfschema/pfs.cc:2201
#29 0x0000705478c56609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#30 0x00007dfc12d6a293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95


Generated at Thu Feb 08 10:06:57 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.