mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-30 18:36:12 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			415 lines
		
	
	
	
		
			16 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			415 lines
		
	
	
	
		
			16 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| set binlog_format=statement;
 | |
| select @@binlog_format, @@create_tmp_table_binlog_formats;
 | |
| @@binlog_format	@@create_tmp_table_binlog_formats
 | |
| STATEMENT	STATEMENT
 | |
| reset master;
 | |
| create database testing_1;
 | |
| use testing_1;
 | |
| create table t1 (a int);
 | |
| create function sf1 (a int) returns int return a+1;
 | |
| create trigger tr1 before insert on t1 for each row insert into t2 values (2*new.a);
 | |
| create procedure sp1 (a int) insert into t1 values(a);
 | |
| drop database testing_1;
 | |
| include/show_binlog_events.inc
 | |
| Log_name	Pos	Event_type	Server_id	End_log_pos	Info
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	create database testing_1
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `testing_1`; create table t1 (a int)
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `testing_1`; CREATE DEFINER=`root`@`localhost` FUNCTION `sf1`(a int) RETURNS int(11)
 | |
| return a+1
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `testing_1`; CREATE DEFINER=`root`@`localhost` trigger tr1 before insert on t1 for each row insert into t2 values (2*new.a)
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `testing_1`; CREATE DEFINER=`root`@`localhost` PROCEDURE `sp1`(a int)
 | |
| insert into t1 values(a)
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	drop database testing_1
 | |
| use test;
 | |
| reset master;
 | |
| create temporary table tt1 (a int);
 | |
| create table t1 (a int);
 | |
| insert into t1 values (1);
 | |
| insert into tt1 values (2);
 | |
| drop database if exists mysqltest1;
 | |
| insert into t1 select * from tt1;
 | |
| drop table tt1, t1;
 | |
| include/show_binlog_events.inc
 | |
| Log_name	Pos	Event_type	Server_id	End_log_pos	Info
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `test`; create temporary table tt1 (a int)
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `test`; create table t1 (a int)
 | |
| master-bin.000001	#	Gtid	#	#	BEGIN GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `test`; insert into t1 values (1)
 | |
| master-bin.000001	#	Query	#	#	COMMIT
 | |
| master-bin.000001	#	Gtid	#	#	BEGIN GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `test`; insert into tt1 values (2)
 | |
| master-bin.000001	#	Query	#	#	COMMIT
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	drop database if exists mysqltest1
 | |
| master-bin.000001	#	Gtid	#	#	BEGIN GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `test`; insert into t1 select * from tt1
 | |
| master-bin.000001	#	Query	#	#	COMMIT
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	DROP TEMPORARY TABLE IF EXISTS `test`.`tt1` /* generated by server */
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `test`; DROP TABLE `t1` /* generated by server */
 | |
| FLUSH STATUS;
 | |
| 
 | |
| # 'DROP TABLE IF EXISTS <deleted tables>' is binlogged
 | |
| # when 'DROP DATABASE' fails and at least one table is deleted
 | |
| # from the database.
 | |
| RESET MASTER;
 | |
| CREATE DATABASE testing_1;
 | |
| USE testing_1;
 | |
| CREATE TABLE t1(c1 INT);
 | |
| CREATE TABLE t2(c1 INT);
 | |
| # Create a file in the database directory
 | |
| SELECT 'hello' INTO OUTFILE 'fake_file.FAKE_FILE';
 | |
| 
 | |
| # 'DROP DATABASE' will fail if there is any other file in the the
 | |
| # database directory
 | |
| DROP DATABASE testing_1;
 | |
| ERROR HY000: Error dropping database (can't rmdir './testing_1', errno: 39 "Directory not empty")
 | |
| 
 | |
| # Remove the fake file.
 | |
| # Now we can drop the database.
 | |
| DROP DATABASE testing_1;
 | |
| #
 | |
| # Bug#11765416 58381: FAILED DROP DATABASE CAN BREAK STATEMENT
 | |
| #              BASED REPLICATION
 | |
| #
 | |
| USE test;
 | |
| DROP DATABASE IF EXISTS db1;
 | |
| DROP TABLE IF EXISTS t3;
 | |
| CREATE DATABASE db1;
 | |
| CREATE TABLE db1.t1 (a INT);
 | |
| CREATE TABLE db1.t2 (b INT, KEY(b)) engine=innodb;
 | |
| CREATE TABLE t3 (a INT, KEY (a), FOREIGN KEY(a) REFERENCES db1.t2(b))
 | |
| engine=innodb;
 | |
| RESET MASTER;
 | |
| DROP DATABASE db1;
 | |
| ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails
 | |
| SHOW TABLES FROM db1;
 | |
| Tables_in_db1
 | |
| t2
 | |
| include/show_binlog_events.inc
 | |
| Log_name	Pos	Event_type	Server_id	End_log_pos	Info
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `db1`; DROP TABLE IF EXISTS `t1`
 | |
| DROP TABLE t3;
 | |
| DROP DATABASE db1;
 | |
| set binlog_format=mixed;
 | |
| select @@binlog_format, @@create_tmp_table_binlog_formats;
 | |
| @@binlog_format	@@create_tmp_table_binlog_formats
 | |
| MIXED	STATEMENT
 | |
| reset master;
 | |
| create database testing_1;
 | |
| use testing_1;
 | |
| create table t1 (a int);
 | |
| create function sf1 (a int) returns int return a+1;
 | |
| create trigger tr1 before insert on t1 for each row insert into t2 values (2*new.a);
 | |
| create procedure sp1 (a int) insert into t1 values(a);
 | |
| drop database testing_1;
 | |
| include/show_binlog_events.inc
 | |
| Log_name	Pos	Event_type	Server_id	End_log_pos	Info
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	create database testing_1
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `testing_1`; create table t1 (a int)
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `testing_1`; CREATE DEFINER=`root`@`localhost` FUNCTION `sf1`(a int) RETURNS int(11)
 | |
| return a+1
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `testing_1`; CREATE DEFINER=`root`@`localhost` trigger tr1 before insert on t1 for each row insert into t2 values (2*new.a)
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `testing_1`; CREATE DEFINER=`root`@`localhost` PROCEDURE `sp1`(a int)
 | |
| insert into t1 values(a)
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	drop database testing_1
 | |
| use test;
 | |
| reset master;
 | |
| create temporary table tt1 (a int);
 | |
| create table t1 (a int);
 | |
| insert into t1 values (1);
 | |
| insert into tt1 values (2);
 | |
| drop database if exists mysqltest1;
 | |
| insert into t1 select * from tt1;
 | |
| drop table tt1, t1;
 | |
| include/show_binlog_events.inc
 | |
| Log_name	Pos	Event_type	Server_id	End_log_pos	Info
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `test`; create table t1 (a int)
 | |
| master-bin.000001	#	Gtid	#	#	BEGIN GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `test`; insert into t1 values (1)
 | |
| master-bin.000001	#	Query	#	#	COMMIT
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	drop database if exists mysqltest1
 | |
| master-bin.000001	#	Gtid	#	#	BEGIN GTID #-#-#
 | |
| master-bin.000001	#	Annotate_rows	#	#	insert into t1 select * from tt1
 | |
| master-bin.000001	#	Table_map	#	#	table_id: # (test.t1)
 | |
| master-bin.000001	#	Write_rows_v1	#	#	table_id: # flags: STMT_END_F
 | |
| master-bin.000001	#	Query	#	#	COMMIT
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `test`; DROP TABLE `t1` /* generated by server */
 | |
| FLUSH STATUS;
 | |
| 
 | |
| # 'DROP TABLE IF EXISTS <deleted tables>' is binlogged
 | |
| # when 'DROP DATABASE' fails and at least one table is deleted
 | |
| # from the database.
 | |
| RESET MASTER;
 | |
| CREATE DATABASE testing_1;
 | |
| USE testing_1;
 | |
| CREATE TABLE t1(c1 INT);
 | |
| CREATE TABLE t2(c1 INT);
 | |
| # Create a file in the database directory
 | |
| SELECT 'hello' INTO OUTFILE 'fake_file.FAKE_FILE';
 | |
| 
 | |
| # 'DROP DATABASE' will fail if there is any other file in the the
 | |
| # database directory
 | |
| DROP DATABASE testing_1;
 | |
| ERROR HY000: Error dropping database (can't rmdir './testing_1', errno: 39 "Directory not empty")
 | |
| 
 | |
| # Remove the fake file.
 | |
| # Now we can drop the database.
 | |
| DROP DATABASE testing_1;
 | |
| #
 | |
| # Bug#11765416 58381: FAILED DROP DATABASE CAN BREAK STATEMENT
 | |
| #              BASED REPLICATION
 | |
| #
 | |
| USE test;
 | |
| DROP DATABASE IF EXISTS db1;
 | |
| DROP TABLE IF EXISTS t3;
 | |
| CREATE DATABASE db1;
 | |
| CREATE TABLE db1.t1 (a INT);
 | |
| CREATE TABLE db1.t2 (b INT, KEY(b)) engine=innodb;
 | |
| CREATE TABLE t3 (a INT, KEY (a), FOREIGN KEY(a) REFERENCES db1.t2(b))
 | |
| engine=innodb;
 | |
| RESET MASTER;
 | |
| DROP DATABASE db1;
 | |
| ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails
 | |
| SHOW TABLES FROM db1;
 | |
| Tables_in_db1
 | |
| t2
 | |
| include/show_binlog_events.inc
 | |
| Log_name	Pos	Event_type	Server_id	End_log_pos	Info
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `db1`; DROP TABLE IF EXISTS `t1`
 | |
| DROP TABLE t3;
 | |
| DROP DATABASE db1;
 | |
| set binlog_format=mixed;
 | |
| SET @@create_tmp_table_binlog_formats="mixed";
 | |
| Warnings:
 | |
| Warning	1292	Truncated incorrect create_tmp_table_binlog_formats value: 'MIXED'
 | |
| select @@binlog_format, @@create_tmp_table_binlog_formats;
 | |
| @@binlog_format	@@create_tmp_table_binlog_formats
 | |
| MIXED	MIXED,STATEMENT
 | |
| reset master;
 | |
| create database testing_1;
 | |
| use testing_1;
 | |
| create table t1 (a int);
 | |
| create function sf1 (a int) returns int return a+1;
 | |
| create trigger tr1 before insert on t1 for each row insert into t2 values (2*new.a);
 | |
| create procedure sp1 (a int) insert into t1 values(a);
 | |
| drop database testing_1;
 | |
| include/show_binlog_events.inc
 | |
| Log_name	Pos	Event_type	Server_id	End_log_pos	Info
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	create database testing_1
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `testing_1`; create table t1 (a int)
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `testing_1`; CREATE DEFINER=`root`@`localhost` FUNCTION `sf1`(a int) RETURNS int(11)
 | |
| return a+1
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `testing_1`; CREATE DEFINER=`root`@`localhost` trigger tr1 before insert on t1 for each row insert into t2 values (2*new.a)
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `testing_1`; CREATE DEFINER=`root`@`localhost` PROCEDURE `sp1`(a int)
 | |
| insert into t1 values(a)
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	drop database testing_1
 | |
| use test;
 | |
| reset master;
 | |
| create temporary table tt1 (a int);
 | |
| create table t1 (a int);
 | |
| insert into t1 values (1);
 | |
| insert into tt1 values (2);
 | |
| drop database if exists mysqltest1;
 | |
| insert into t1 select * from tt1;
 | |
| drop table tt1, t1;
 | |
| include/show_binlog_events.inc
 | |
| Log_name	Pos	Event_type	Server_id	End_log_pos	Info
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `test`; create temporary table tt1 (a int)
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `test`; create table t1 (a int)
 | |
| master-bin.000001	#	Gtid	#	#	BEGIN GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `test`; insert into t1 values (1)
 | |
| master-bin.000001	#	Query	#	#	COMMIT
 | |
| master-bin.000001	#	Gtid	#	#	BEGIN GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `test`; insert into tt1 values (2)
 | |
| master-bin.000001	#	Query	#	#	COMMIT
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	drop database if exists mysqltest1
 | |
| master-bin.000001	#	Gtid	#	#	BEGIN GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `test`; insert into t1 select * from tt1
 | |
| master-bin.000001	#	Query	#	#	COMMIT
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	DROP TEMPORARY TABLE IF EXISTS `test`.`tt1` /* generated by server */
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `test`; DROP TABLE `t1` /* generated by server */
 | |
| FLUSH STATUS;
 | |
| 
 | |
| # 'DROP TABLE IF EXISTS <deleted tables>' is binlogged
 | |
| # when 'DROP DATABASE' fails and at least one table is deleted
 | |
| # from the database.
 | |
| RESET MASTER;
 | |
| CREATE DATABASE testing_1;
 | |
| USE testing_1;
 | |
| CREATE TABLE t1(c1 INT);
 | |
| CREATE TABLE t2(c1 INT);
 | |
| # Create a file in the database directory
 | |
| SELECT 'hello' INTO OUTFILE 'fake_file.FAKE_FILE';
 | |
| 
 | |
| # 'DROP DATABASE' will fail if there is any other file in the the
 | |
| # database directory
 | |
| DROP DATABASE testing_1;
 | |
| ERROR HY000: Error dropping database (can't rmdir './testing_1', errno: 39 "Directory not empty")
 | |
| 
 | |
| # Remove the fake file.
 | |
| # Now we can drop the database.
 | |
| DROP DATABASE testing_1;
 | |
| #
 | |
| # Bug#11765416 58381: FAILED DROP DATABASE CAN BREAK STATEMENT
 | |
| #              BASED REPLICATION
 | |
| #
 | |
| USE test;
 | |
| DROP DATABASE IF EXISTS db1;
 | |
| DROP TABLE IF EXISTS t3;
 | |
| CREATE DATABASE db1;
 | |
| CREATE TABLE db1.t1 (a INT);
 | |
| CREATE TABLE db1.t2 (b INT, KEY(b)) engine=innodb;
 | |
| CREATE TABLE t3 (a INT, KEY (a), FOREIGN KEY(a) REFERENCES db1.t2(b))
 | |
| engine=innodb;
 | |
| RESET MASTER;
 | |
| DROP DATABASE db1;
 | |
| ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails
 | |
| SHOW TABLES FROM db1;
 | |
| Tables_in_db1
 | |
| t2
 | |
| include/show_binlog_events.inc
 | |
| Log_name	Pos	Event_type	Server_id	End_log_pos	Info
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `db1`; DROP TABLE IF EXISTS `t1`
 | |
| DROP TABLE t3;
 | |
| DROP DATABASE db1;
 | |
| set binlog_format=row;
 | |
| select @@binlog_format, @@create_tmp_table_binlog_formats;
 | |
| @@binlog_format	@@create_tmp_table_binlog_formats
 | |
| ROW	MIXED,STATEMENT
 | |
| reset master;
 | |
| create database testing_1;
 | |
| use testing_1;
 | |
| create table t1 (a int);
 | |
| create function sf1 (a int) returns int return a+1;
 | |
| create trigger tr1 before insert on t1 for each row insert into t2 values (2*new.a);
 | |
| create procedure sp1 (a int) insert into t1 values(a);
 | |
| drop database testing_1;
 | |
| include/show_binlog_events.inc
 | |
| Log_name	Pos	Event_type	Server_id	End_log_pos	Info
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	create database testing_1
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `testing_1`; create table t1 (a int)
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `testing_1`; CREATE DEFINER=`root`@`localhost` FUNCTION `sf1`(a int) RETURNS int(11)
 | |
| return a+1
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `testing_1`; CREATE DEFINER=`root`@`localhost` trigger tr1 before insert on t1 for each row insert into t2 values (2*new.a)
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `testing_1`; CREATE DEFINER=`root`@`localhost` PROCEDURE `sp1`(a int)
 | |
| insert into t1 values(a)
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	drop database testing_1
 | |
| use test;
 | |
| reset master;
 | |
| create temporary table tt1 (a int);
 | |
| create table t1 (a int);
 | |
| insert into t1 values (1);
 | |
| insert into tt1 values (2);
 | |
| drop database if exists mysqltest1;
 | |
| insert into t1 select * from tt1;
 | |
| drop table tt1, t1;
 | |
| include/show_binlog_events.inc
 | |
| Log_name	Pos	Event_type	Server_id	End_log_pos	Info
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `test`; create table t1 (a int)
 | |
| master-bin.000001	#	Gtid	#	#	BEGIN GTID #-#-#
 | |
| master-bin.000001	#	Annotate_rows	#	#	insert into t1 values (1)
 | |
| master-bin.000001	#	Table_map	#	#	table_id: # (test.t1)
 | |
| master-bin.000001	#	Write_rows_v1	#	#	table_id: # flags: STMT_END_F
 | |
| master-bin.000001	#	Query	#	#	COMMIT
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	drop database if exists mysqltest1
 | |
| master-bin.000001	#	Gtid	#	#	BEGIN GTID #-#-#
 | |
| master-bin.000001	#	Annotate_rows	#	#	insert into t1 select * from tt1
 | |
| master-bin.000001	#	Table_map	#	#	table_id: # (test.t1)
 | |
| master-bin.000001	#	Write_rows_v1	#	#	table_id: # flags: STMT_END_F
 | |
| master-bin.000001	#	Query	#	#	COMMIT
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `test`; DROP TABLE `t1` /* generated by server */
 | |
| FLUSH STATUS;
 | |
| 
 | |
| # 'DROP TABLE IF EXISTS <deleted tables>' is binlogged
 | |
| # when 'DROP DATABASE' fails and at least one table is deleted
 | |
| # from the database.
 | |
| RESET MASTER;
 | |
| CREATE DATABASE testing_1;
 | |
| USE testing_1;
 | |
| CREATE TABLE t1(c1 INT);
 | |
| CREATE TABLE t2(c1 INT);
 | |
| # Create a file in the database directory
 | |
| SELECT 'hello' INTO OUTFILE 'fake_file.FAKE_FILE';
 | |
| 
 | |
| # 'DROP DATABASE' will fail if there is any other file in the the
 | |
| # database directory
 | |
| DROP DATABASE testing_1;
 | |
| ERROR HY000: Error dropping database (can't rmdir './testing_1', errno: 39 "Directory not empty")
 | |
| 
 | |
| # Remove the fake file.
 | |
| # Now we can drop the database.
 | |
| DROP DATABASE testing_1;
 | |
| #
 | |
| # Bug#11765416 58381: FAILED DROP DATABASE CAN BREAK STATEMENT
 | |
| #              BASED REPLICATION
 | |
| #
 | |
| USE test;
 | |
| DROP DATABASE IF EXISTS db1;
 | |
| DROP TABLE IF EXISTS t3;
 | |
| CREATE DATABASE db1;
 | |
| CREATE TABLE db1.t1 (a INT);
 | |
| CREATE TABLE db1.t2 (b INT, KEY(b)) engine=innodb;
 | |
| CREATE TABLE t3 (a INT, KEY (a), FOREIGN KEY(a) REFERENCES db1.t2(b))
 | |
| engine=innodb;
 | |
| RESET MASTER;
 | |
| DROP DATABASE db1;
 | |
| ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails
 | |
| SHOW TABLES FROM db1;
 | |
| Tables_in_db1
 | |
| t2
 | |
| include/show_binlog_events.inc
 | |
| Log_name	Pos	Event_type	Server_id	End_log_pos	Info
 | |
| master-bin.000001	#	Gtid	#	#	GTID #-#-#
 | |
| master-bin.000001	#	Query	#	#	use `db1`; DROP TABLE IF EXISTS `t1`
 | |
| DROP TABLE t3;
 | |
| DROP DATABASE db1;
 | |
| show databases;
 | |
| Database
 | |
| information_schema
 | |
| mtr
 | |
| mysql
 | |
| performance_schema
 | |
| sys
 | |
| test
 | 
