[MDEV-15588] Galera node crashes in in Item::delete_self upon EXECUTE IMMEDIATE Created: 2018-03-16  Updated: 2023-06-06  Resolved: 2023-06-06

Status: Closed
Project: MariaDB Server
Component/s: Galera, Prepared Statements, wsrep
Affects Version/s: 10.2
Fix Version/s: N/A

Type: Bug Priority: Major
Reporter: Elena Stepanova Assignee: Daniele Sciascia
Resolution: Won't Fix Votes: 0
Labels: None

Issue Links:
Relates
relates to MDEV-16078 Server crashes in Item::delete_self o... Closed

 Description   

Notes:

  • couldn't reproduce without wsrep enabled.
  • the test case only applicable to 10.2+ because it uses EXECUTE IMMEDIATE. I couldn't convert it to traditional PS in order to check different versions (the crash disappears upon converting).
  • the test case is non-deterministic, although it fails pretty much every time for me. If it doesn't fail for you, run with --repeat.
  • i run it in shm to avoid WSREP has not yet prepared node for application use.

# Run with
# --mysqld=--wsrep-provider=<galera library location>  --mysqld=--wsrep_cluster_address=gcomm:// --mysqld=--innodb_autoinc_lock_mode=2 --mysqld=--innodb_flush_log_at_trx_commit=0 --mysqld=--innodb_locks_unsafe_for_binlog=1 --mysqld=--wsrep-on --mem
 
--source include/have_innodb.inc
--source include/have_binlog_format_row.inc
 
CREATE TABLE t1 (a TEXT) ENGINE=InnoDB;
INSERT INTO t1 VALUES (NULL),(NULL);
CREATE TABLE t2 (b TEXT) ENGINE=InnoDB;
--connect(con1,localhost,root,,)
--send
ALTER TABLE t1 FORCE;
--connection default
EXECUTE IMMEDIATE 'INSERT INTO t2 SELECT * FROM t1';
 
# Cleanup
--connection con1
--reap
--disconnect con1
--connection default
DROP TABLE t1, t2;

10.2 27c54b77c1aad3a

#3  <signal handler called>
#4  0x000055ed4eba8e77 in Item::delete_self (this=0x7f137c012e18) at /data/src/10.2/sql/item.h:1834
#5  0x000055ed4eb9fe96 in Query_arena::free_items (this=0x7f137c000b18) at /data/src/10.2/sql/sql_class.cc:3559
#6  0x000055ed4eb9b363 in THD::cleanup_after_query (this=0x7f137c000b00) at /data/src/10.2/sql/sql_class.cc:2178
#7  0x000055ed4ebf182a in mysql_parse (thd=0x7f137c000b00, rawbuf=0x7f137c0125f8 '\217' <repeats 200 times>..., length=51, parser_state=0x7f13e43a0200, is_com_multi=false, is_next_command=false) at /data/src/10.2/sql/sql_parse.cc:7923
#8  0x000055ed4ebf0e08 in wsrep_mysql_parse (thd=0x7f137c000b00, rawbuf=0x7f137c0125f8 '\217' <repeats 200 times>..., length=51, parser_state=0x7f13e43a0200, is_com_multi=false, is_next_command=false) at /data/src/10.2/sql/sql_parse.cc:7715
#9  0x000055ed4ebdf59e in dispatch_command (command=COM_QUERY, thd=0x7f137c000b00, packet=0x7f137c08cb41 "EXECUTE IMMEDIATE 'INSERT INTO t2 SELECT * FROM t1'", packet_length=51, is_com_multi=false, is_next_command=false) at /data/src/10.2/sql/sql_parse.cc:1803
#10 0x000055ed4ebddf58 in do_command (thd=0x7f137c000b00) at /data/src/10.2/sql/sql_parse.cc:1360
#11 0x000055ed4ed2c77c in do_handle_one_connection (connect=0x55ed530444c0) at /data/src/10.2/sql/sql_connect.cc:1335
#12 0x000055ed4ed2c509 in handle_one_connection (arg=0x55ed530444c0) at /data/src/10.2/sql/sql_connect.cc:1241
#13 0x000055ed4f14c412 in pfs_spawn_thread (arg=0x55ed52fa9fb0) at /data/src/10.2/storage/perfschema/pfs.cc:1862
#14 0x00007f13fd4d7494 in start_thread (arg=0x7f13e43a1700) at pthread_create.c:333
#15 0x00007f13fb8bd93f in clone () from /lib/x86_64-linux-gnu/libc.so.6



 Comments   
Comment by Daniele Sciascia [ 2020-11-03 ]

Is this issue still reproducible?
I tried with the latest 10.2 and 10.4, and did not manage to get a crash.

Comment by Jan Lindström [ 2023-06-06 ]

10.2 is EOl.

Generated at Thu Feb 08 08:22:31 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.