mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 03:52:35 +01:00
7ff9e5831e
innodb_drop_database(): Apply binary comparison. (SYS_FOREIGN.ID unfortunately uses latin1_swedish_ci collation.)
47 lines
1.3 KiB
Text
47 lines
1.3 KiB
Text
--source include/have_innodb.inc
|
|
--source include/have_debug_sync.inc
|
|
# The embedded server does not support restarting.
|
|
--source include/not_embedded.inc
|
|
--source include/have_case_sensitive_file_system.inc
|
|
|
|
--echo #
|
|
--echo # Bug #20476395 DICT_LOAD_FOREIGNS() FAILED IN
|
|
--echo # COMMIT_INPLACE_ALTER_TABLE
|
|
--echo #
|
|
|
|
call mtr.add_suppression("InnoDB: Failed to load table");
|
|
|
|
CREATE DATABASE Bug;
|
|
CREATE TABLE Bug.parent(a SERIAL) ENGINE=INNODB;
|
|
CREATE TABLE Bug.child(a SERIAL, FOREIGN KEY f(a) REFERENCES Bug.parent(a))
|
|
ENGINE=INNODB;
|
|
|
|
create database bug;
|
|
use bug;
|
|
|
|
create table parent(a serial) engine=innodb;
|
|
create table child(a serial, foreign key fk (a) references parent(a))engine=innodb;
|
|
|
|
insert into parent values(1);
|
|
insert into child values(1);
|
|
drop database Bug;
|
|
|
|
connect (con1,localhost,root,,bug);
|
|
SET DEBUG_SYNC='innodb_rename_table_ready SIGNAL s1 WAIT_FOR s2 EXECUTE 2';
|
|
--send ALTER TABLE child ROW_FORMAT=DYNAMIC, ALGORITHM=COPY
|
|
connection default;
|
|
SET DEBUG_SYNC='now WAIT_FOR s1';
|
|
SET DEBUG_SYNC='now SIGNAL s2 WAIT_FOR s1';
|
|
|
|
--let $shutdown_timeout= 0
|
|
--source include/restart_mysqld.inc
|
|
disconnect con1;
|
|
|
|
show tables;
|
|
alter table parent row_format=dynamic;
|
|
select * from child;
|
|
--error ER_ROW_IS_REFERENCED_2
|
|
drop table parent;
|
|
drop table child;
|
|
drop table parent;
|
|
drop database bug;
|