[MDEV-30277] Assertion failure in Diagnostics_area::set_error_status / Reprepare_observer::report_error Created: 2022-12-19  Updated: 2023-11-28

Status: Open
Project: MariaDB Server
Component/s: Prepared Statements
Affects Version/s: 10.3, 10.4, 10.5, 10.6, 10.7, 10.8, 10.9, 10.10, 10.11
Fix Version/s: 10.4, 10.5, 10.6

Type: Bug Priority: Major
Reporter: Elena Stepanova Assignee: Rucha Deodhar
Resolution: Unresolved Votes: 0
Labels: None


 Description   

CREATE TABLE t (a INT);
PREPARE stmt FROM " DELETE FROM t LIMIT ?";
ALTER TABLE t FORCE;
EXECUTE stmt USING DEFAULT;
 
# Cleanup
DROP TABLE t;

10.3 0ca3aaa7

/src/sql/sql_error.cc:445: void Diagnostics_area::set_error_status(uint, const char*, const char*, const Sql_user_condition_identity&, const Sql_condition*): Assertion `! is_set() || m_can_overwrite_status' failed.
 
#7  0x00007fb215bde662 in __GI___assert_fail (assertion=0x5633e9349be0 "! is_set() || m_can_overwrite_status", file=0x5633e9349540 "/src/sql/sql_error.cc", line=445, function=0x5633e9349c40 "void Diagnostics_area::set_error_status(uint, const char*, const char*, const Sql_user_condition_identity&, const Sql_condition*)") at assert.c:101
#8  0x00005633e767136c in Diagnostics_area::set_error_status (this=0x62a0000657e8, sql_errno=1615, message=0x5633e9650c20 "Prepared statement needs to be re-prepared", sqlstate=0x5633e93c6cc0 "HY000", ucid=..., error_condition=0x0) at /src/sql/sql_error.cc:445
#9  0x00005633e76710ef in Diagnostics_area::set_error_status (this=0x62a0000657e8, sql_errno=1615) at /src/sql/sql_error.cc:407
#10 0x00005633e778a807 in Reprepare_observer::report_error (this=0x7fb20aff7ce0, thd=0x62a000060208) at /src/sql/sql_prepare.cc:3882
#11 0x00005633e75b8cd9 in check_and_update_table_version (thd=0x62a000060208, tables=0x62b000032af0, table_share=0x61a000017aa8) at /src/sql/sql_base.cc:2745
#12 0x00005633e75bd862 in open_and_process_table (thd=0x62a000060208, tables=0x62b000032af0, counter=0x7fb20aff5640, flags=0, prelocking_strategy=0x7fb20aff5750, has_prelocking_list=false, ot_ctx=0x7fb20aff5530) at /src/sql/sql_base.cc:3795
#13 0x00005633e75bf936 in open_tables (thd=0x62a000060208, options=..., start=0x7fb20aff5650, counter=0x7fb20aff5640, flags=0, prelocking_strategy=0x7fb20aff5750) at /src/sql/sql_base.cc:4208
#14 0x00005633e75c48ed in open_and_lock_tables (thd=0x62a000060208, options=..., tables=0x62b000032af0, derived=true, flags=0, prelocking_strategy=0x7fb20aff5750) at /src/sql/sql_base.cc:5148
#15 0x00005633e752b967 in open_and_lock_tables (thd=0x62a000060208, tables=0x62b000032af0, derived=true, flags=0) at /src/sql/sql_base.h:503
#16 0x00005633e82bc348 in mysql_delete (thd=0x62a000060208, table_list=0x62b000032af0, conds=0x0, order_list=0x62b000031d30, limit=0, options=0, result=0x0) at /src/sql/sql_delete.cc:303
#17 0x00005633e772cfdc in mysql_execute_command (thd=0x62a000060208) at /src/sql/sql_parse.cc:4708
#18 0x00005633e779338a in Prepared_statement::execute (this=0x619000081188, expanded_query=0x7fb20aff7d80, open_cursor=false) at /src/sql/sql_prepare.cc:5029
#19 0x00005633e778e7ef in Prepared_statement::execute_loop (this=0x619000081188, expanded_query=0x7fb20aff7d80, open_cursor=false, packet=0x0, packet_end=0x0) at /src/sql/sql_prepare.cc:4457
#20 0x00005633e77889dc in mysql_sql_stmt_execute (thd=0x62a000060208) at /src/sql/sql_prepare.cc:3545
#21 0x00005633e7727717 in mysql_execute_command (thd=0x62a000060208) at /src/sql/sql_parse.cc:3887
#22 0x00005633e7742efe in mysql_parse (thd=0x62a000060208, rawbuf=0x62b000000228 "EXECUTE stmt USING DEFAULT", length=26, parser_state=0x7fb20aff9950, is_com_multi=false, is_next_command=false) at /src/sql/sql_parse.cc:7855
#23 0x00005633e771a59c in dispatch_command (command=COM_QUERY, thd=0x62a000060208, packet=0x6290000eb209 "EXECUTE stmt USING DEFAULT", packet_length=26, is_com_multi=false, is_next_command=false) at /src/sql/sql_parse.cc:1852
#24 0x00005633e7717154 in do_command (thd=0x62a000060208) at /src/sql/sql_parse.cc:1398
#25 0x00005633e7adaf88 in do_handle_one_connection (connect=0x608000000ca8) at /src/sql/sql_connect.cc:1404
#26 0x00005633e7ada884 in handle_one_connection (arg=0x608000000ca8) at /src/sql/sql_connect.cc:1309
#27 0x00005633e9088375 in pfs_spawn_thread (arg=0x615000004e08) at /src/storage/perfschema/pfs.cc:1869
#28 0x00007fb215d89ea7 in start_thread (arg=<optimized out>) at pthread_create.c:477
#29 0x00007fb215ca9aef in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Non-debug produces ER_INVALID_DEFAULT_PARAM

query 'EXECUTE stmt USING DEFAULT' failed: 4032: Default/ignore value is not supported for such parameter usage


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