summaryrefslogtreecommitdiffstats
path: root/mysql-test/suite/innodb/t/dropdb.test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/suite/innodb/t/dropdb.test')
-rw-r--r--mysql-test/suite/innodb/t/dropdb.test27
1 files changed, 27 insertions, 0 deletions
diff --git a/mysql-test/suite/innodb/t/dropdb.test b/mysql-test/suite/innodb/t/dropdb.test
new file mode 100644
index 00000000..f27aede7
--- /dev/null
+++ b/mysql-test/suite/innodb/t/dropdb.test
@@ -0,0 +1,27 @@
+--source include/have_innodb.inc
+
+SET NAMES utf8;
+call mtr.add_suppression("Invalid .old.. table or database name");
+
+--echo #
+--echo # Bug #19929435 DROP DATABASE HANGS WITH MALFORMED TABLE
+--echo #
+
+set session default_storage_engine=innodb;
+create database `b`;
+use `b`;
+--error ER_WRONG_TABLE_NAME
+create table `#mysql50#q.q` select 1;
+create table `#mysql50#q·q` select 1;
+drop database `b`;
+
+--echo #
+--echo # MDEV-27336 Crash on DROP DATABASE due to out-of-bounds result
+--echo # from InnoDB SUBSTR() function
+--echo #
+USE test;
+CREATE TABLE t1(a INT PRIMARY KEY) ENGINE=InnoDB;
+CREATE TABLE t2(a INT PRIMARY KEY REFERENCES t1(a)) ENGINE=InnoDB;
+CREATE DATABASE somewhat_longer_name_to_cause_trouble;
+DROP DATABASE somewhat_longer_name_to_cause_trouble;
+DROP TABLE t2,t1;