Details
-
Bug
-
Status: Closed (View Workflow)
-
Critical
-
Resolution: Fixed
-
11.6(EOL)
-
None
-
bb-11.4-midenok-MDEV-20865
Description
After changes MDEV-20865 server crashes on case:
CREATE TABLE t1 (pk INT PRIMARY KEY, f INT); |
CREATE TABLE t2 (a INT, FOREIGN KEY (a) REFERENCES t1 (pk)); |
LOCK TABLES t1 WRITE;
|
ALTER TABLE t1 RENAME TO t3; |
UNLOCK TABLES;
|
DROP TABLE t2, t3; |
Stacktrace:
Thread pointer: 0x7913e4000dc8
|
Attempting backtrace. You can use the following information to find out |
where mysqld died. If you see no messages after this, something went |
terribly wrong...
|
stack_bottom = 0x79141005fbf8 thread_stack 0x49000
|
mysys/stacktrace.c:215(my_print_stacktrace)[0x57464074f78a]
|
sql/signal_handler.cc:238(handle_fatal_signal)[0x57463fe107b4]
|
libc_sigaction.c:0(__restore_rt)[0x791416842520]
|
sql/mdl.cc:1903(MDL_ticket::has_stronger_or_equal_type(enum_mdl_type) const)[0x57463fbfabbf]
|
sql/mdl.cc:2610(MDL_context::upgrade_shared_lock(MDL_ticket*, enum_mdl_type, double))[0x57463fbfca52] |
sql/sql_table.cc:14509(fk_handle_rename(THD*, TABLE_LIST*, st_mysql_const_lex_string const*, st_mysql_const_lex_string const*, FK_rename_vector&))[0x57463fb221f1]
|
sql/sql_table.cc:10184(simple_rename_or_index_change(THD*, TABLE_LIST*, Alter_info::enum_enable_or_disable, TRIGGER_RENAME_PARAM*, Alter_table_ctx*))[0x57463fb10df5]
|
sql/sql_table.cc:11240(mysql_alter_table(THD*, st_mysql_const_lex_string const*, st_mysql_const_lex_string const*, Table_specification_st*, TABLE_LIST*, Recreate_info*, Alter_info*, unsigned int, st_order*, bool, bool))[0x57463fb14412] |
sql/sql_alter.cc:704(Sql_cmd_alter_table::execute(THD*))[0x57463fbf5522] |
sql/sql_parse.cc:5803(mysql_execute_command(THD*, bool))[0x57463f9d70e5]
|
sql/sql_parse.cc:7815(mysql_parse(THD*, char*, unsigned int, Parser_state*))[0x57463f9dd36e] |
sql/sql_parse.cc:1895(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool))[0x57463f9c9cbd] |
sql/sql_parse.cc:1406(do_command(THD*, bool))[0x57463f9c8603]
|
sql/sql_connect.cc:1437(do_handle_one_connection(CONNECT*, bool))[0x57463fbe8c26] |
sql/sql_connect.cc:1341(handle_one_connection)[0x57463fbe898f]
|
perfschema/pfs.cc:2203(pfs_spawn_thread)[0x57464018a9c1]
|
nptl/pthread_create.c:442(start_thread)[0x791416894ac3]
|
x86_64/clone3.S:83(__clone3)[0x791416926850]
|
Attachments
Issue Links
- is caused by
-
MDEV-20865 Store foreign key info in FRM and TABLE_SHARE
-
- In Review
-
Activity
Field | Original Value | New Value |
---|---|---|
Link | This issue is caused by MDEV-20865 [ MDEV-20865 ] |
Assignee | Aleksey Midenkov [ midenok ] |
Affects Version/s | 11.6 [ 29515 ] | |
Affects Version/s | 10.6 [ 24028 ] |
Fix Version/s | 11.6 [ 29515 ] | |
Fix Version/s | 10.6 [ 24028 ] |
Description |
After changes MDEV-20865 server crashes on case:
{code:sql} --source include/have_innodb.inc CREATE TABLE t1 (pk INT PRIMARY KEY, f INT) ENGINE=InnoDB; CREATE TABLE t2 (a INT, FOREIGN KEY (a) REFERENCES t1 (pk)) ENGINE=InnoDB; LOCK TABLES t1 WRITE; ALTER TABLE t1 RENAME TO t3; UNLOCK TABLES; DROP TABLE t2, t3; {code} *Stacktrace:* {code:sql} Thread pointer: 0x7913e4000dc8 Attempting backtrace. You can use the following information to find out where mysqld died. If you see no messages after this, something went terribly wrong... stack_bottom = 0x79141005fbf8 thread_stack 0x49000 mysys/stacktrace.c:215(my_print_stacktrace)[0x57464074f78a] sql/signal_handler.cc:238(handle_fatal_signal)[0x57463fe107b4] libc_sigaction.c:0(__restore_rt)[0x791416842520] sql/mdl.cc:1903(MDL_ticket::has_stronger_or_equal_type(enum_mdl_type) const)[0x57463fbfabbf] sql/mdl.cc:2610(MDL_context::upgrade_shared_lock(MDL_ticket*, enum_mdl_type, double))[0x57463fbfca52] sql/sql_table.cc:14509(fk_handle_rename(THD*, TABLE_LIST*, st_mysql_const_lex_string const*, st_mysql_const_lex_string const*, FK_rename_vector&))[0x57463fb221f1] sql/sql_table.cc:10184(simple_rename_or_index_change(THD*, TABLE_LIST*, Alter_info::enum_enable_or_disable, TRIGGER_RENAME_PARAM*, Alter_table_ctx*))[0x57463fb10df5] sql/sql_table.cc:11240(mysql_alter_table(THD*, st_mysql_const_lex_string const*, st_mysql_const_lex_string const*, Table_specification_st*, TABLE_LIST*, Recreate_info*, Alter_info*, unsigned int, st_order*, bool, bool))[0x57463fb14412] sql/sql_alter.cc:704(Sql_cmd_alter_table::execute(THD*))[0x57463fbf5522] sql/sql_parse.cc:5803(mysql_execute_command(THD*, bool))[0x57463f9d70e5] sql/sql_parse.cc:7815(mysql_parse(THD*, char*, unsigned int, Parser_state*))[0x57463f9dd36e] sql/sql_parse.cc:1895(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool))[0x57463f9c9cbd] sql/sql_parse.cc:1406(do_command(THD*, bool))[0x57463f9c8603] sql/sql_connect.cc:1437(do_handle_one_connection(CONNECT*, bool))[0x57463fbe8c26] sql/sql_connect.cc:1341(handle_one_connection)[0x57463fbe898f] perfschema/pfs.cc:2203(pfs_spawn_thread)[0x57464018a9c1] nptl/pthread_create.c:442(start_thread)[0x791416894ac3] x86_64/clone3.S:83(__clone3)[0x791416926850] {code} |
After changes MDEV-20865 server crashes on case:
{code:sql} CREATE TABLE t1 (pk INT PRIMARY KEY, f INT); CREATE TABLE t2 (a INT, FOREIGN KEY (a) REFERENCES t1 (pk)); LOCK TABLES t1 WRITE; ALTER TABLE t1 RENAME TO t3; UNLOCK TABLES; DROP TABLE t2, t3; {code} *Stacktrace:* {code:sql} Thread pointer: 0x7913e4000dc8 Attempting backtrace. You can use the following information to find out where mysqld died. If you see no messages after this, something went terribly wrong... stack_bottom = 0x79141005fbf8 thread_stack 0x49000 mysys/stacktrace.c:215(my_print_stacktrace)[0x57464074f78a] sql/signal_handler.cc:238(handle_fatal_signal)[0x57463fe107b4] libc_sigaction.c:0(__restore_rt)[0x791416842520] sql/mdl.cc:1903(MDL_ticket::has_stronger_or_equal_type(enum_mdl_type) const)[0x57463fbfabbf] sql/mdl.cc:2610(MDL_context::upgrade_shared_lock(MDL_ticket*, enum_mdl_type, double))[0x57463fbfca52] sql/sql_table.cc:14509(fk_handle_rename(THD*, TABLE_LIST*, st_mysql_const_lex_string const*, st_mysql_const_lex_string const*, FK_rename_vector&))[0x57463fb221f1] sql/sql_table.cc:10184(simple_rename_or_index_change(THD*, TABLE_LIST*, Alter_info::enum_enable_or_disable, TRIGGER_RENAME_PARAM*, Alter_table_ctx*))[0x57463fb10df5] sql/sql_table.cc:11240(mysql_alter_table(THD*, st_mysql_const_lex_string const*, st_mysql_const_lex_string const*, Table_specification_st*, TABLE_LIST*, Recreate_info*, Alter_info*, unsigned int, st_order*, bool, bool))[0x57463fb14412] sql/sql_alter.cc:704(Sql_cmd_alter_table::execute(THD*))[0x57463fbf5522] sql/sql_parse.cc:5803(mysql_execute_command(THD*, bool))[0x57463f9d70e5] sql/sql_parse.cc:7815(mysql_parse(THD*, char*, unsigned int, Parser_state*))[0x57463f9dd36e] sql/sql_parse.cc:1895(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool))[0x57463f9c9cbd] sql/sql_parse.cc:1406(do_command(THD*, bool))[0x57463f9c8603] sql/sql_connect.cc:1437(do_handle_one_connection(CONNECT*, bool))[0x57463fbe8c26] sql/sql_connect.cc:1341(handle_one_connection)[0x57463fbe898f] perfschema/pfs.cc:2203(pfs_spawn_thread)[0x57464018a9c1] nptl/pthread_create.c:442(start_thread)[0x791416894ac3] x86_64/clone3.S:83(__clone3)[0x791416926850] {code} |
Fix Version/s | N/A [ 14700 ] | |
Fix Version/s | 11.6 [ 29515 ] | |
Resolution | Fixed [ 1 ] | |
Status | Open [ 1 ] | Closed [ 6 ] |
Environment | bb-11.4-midenok-MDEV-20865 |