summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2017-08-29 13:15:35 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2017-08-29 18:35:30 +0300
commit9e9a3b8ede2a398131b6fd35012af5153289d32c (patch)
tree2349ddd3816ae7fefa247d21ad92930bdfc8b740
parentf56bd70f51020c67a30415ae381ae93b9087d88d (diff)
downloadmariadb-git-9e9a3b8ede2a398131b6fd35012af5153289d32c.tar.gz
Merge innodb.create-index test changes from MySQL 5.6 to MariaDB
Import the MySQL 5.6 addition from innodb.create-index to a new debug-only test, innodb.create-index-debug. The existing test innodb.create-index also runs on a debug server.
-rw-r--r--mysql-test/suite/innodb/r/create-index-debug.result26
-rw-r--r--mysql-test/suite/innodb/t/create-index-debug.test34
2 files changed, 60 insertions, 0 deletions
diff --git a/mysql-test/suite/innodb/r/create-index-debug.result b/mysql-test/suite/innodb/r/create-index-debug.result
new file mode 100644
index 00000000000..99f6efe9bfe
--- /dev/null
+++ b/mysql-test/suite/innodb/r/create-index-debug.result
@@ -0,0 +1,26 @@
+SET @saved_debug_dbug = @@SESSION.debug_dbug;
+#
+#BUG#21326304 INNODB ONLINE ALTER TABLE ENDS IN CRASH ON DISK FULL
+#
+CREATE TABLE t1(f1 CHAR(255) NOT NULL, f2 CHAR(255) NOT NULL, f3
+CHAR(255) NOT NULL, f4 CHAR(255) NOT NULL, f5 CHAR(255) NOT NULL,f6
+CHAR(255) NOT NULL, f7 CHAR(255) NOT NULL, f8 CHAR(255) NOT NULL,f9
+CHAR(255) NOT NULL, f10 CHAR(255) NOT NULL, f11 CHAR(255) NOT NULL,f12
+CHAR(255) NOT NULL, f13 CHAR(255) NOT NULL, f14 CHAR(255) NOT NULL,f15
+CHAR(255) NOT NULL, f16 CHAR(255) NOT NULL, f17 CHAR(255) NOT NULL,f18
+CHAR(255) NOT NULL)
+ENGINE=INNODB ROW_FORMAT=DYNAMIC;
+Warnings:
+Warning 1478 InnoDB: ROW_FORMAT=DYNAMIC requires innodb_file_format > Antelope.
+Warning 1478 InnoDB: assuming ROW_FORMAT=COMPACT.
+INSERT INTO t1
+VALUES('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r');
+INSERT INTO t1 SELECT * FROM t1;
+INSERT INTO t1 SELECT * FROM t1;
+INSERT INTO t1 SELECT * FROM t1;
+INSERT INTO t1 SELECT * FROM t1;
+SET debug_dbug = '+d,disk_is_full';
+ALTER TABLE t1 FORCE, ALGORITHM=INPLACE;
+ERROR HY000: The table 't1' is full
+SET debug_dbug= @saved_debug_dbug;
+DROP TABLE t1;
diff --git a/mysql-test/suite/innodb/t/create-index-debug.test b/mysql-test/suite/innodb/t/create-index-debug.test
new file mode 100644
index 00000000000..9ea416fbe1e
--- /dev/null
+++ b/mysql-test/suite/innodb/t/create-index-debug.test
@@ -0,0 +1,34 @@
+--source include/have_innodb.inc
+--source include/have_innodb_16k.inc
+--source include/have_debug.inc
+
+SET @saved_debug_dbug = @@SESSION.debug_dbug;
+
+--echo #
+--echo #BUG#21326304 INNODB ONLINE ALTER TABLE ENDS IN CRASH ON DISK FULL
+--echo #
+CREATE TABLE t1(f1 CHAR(255) NOT NULL, f2 CHAR(255) NOT NULL, f3
+CHAR(255) NOT NULL, f4 CHAR(255) NOT NULL, f5 CHAR(255) NOT NULL,f6
+CHAR(255) NOT NULL, f7 CHAR(255) NOT NULL, f8 CHAR(255) NOT NULL,f9
+CHAR(255) NOT NULL, f10 CHAR(255) NOT NULL, f11 CHAR(255) NOT NULL,f12
+CHAR(255) NOT NULL, f13 CHAR(255) NOT NULL, f14 CHAR(255) NOT NULL,f15
+CHAR(255) NOT NULL, f16 CHAR(255) NOT NULL, f17 CHAR(255) NOT NULL,f18
+CHAR(255) NOT NULL)
+ENGINE=INNODB ROW_FORMAT=DYNAMIC;
+
+INSERT INTO t1
+VALUES('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r');
+
+INSERT INTO t1 SELECT * FROM t1;
+INSERT INTO t1 SELECT * FROM t1;
+INSERT INTO t1 SELECT * FROM t1;
+INSERT INTO t1 SELECT * FROM t1;
+
+SET debug_dbug = '+d,disk_is_full';
+
+--error ER_RECORD_FILE_FULL
+ALTER TABLE t1 FORCE, ALGORITHM=INPLACE;
+
+SET debug_dbug= @saved_debug_dbug;
+
+DROP TABLE t1;