summaryrefslogtreecommitdiff
path: root/mysql-test/main/mysqldump_restore.test
diff options
context:
space:
mode:
authorAlexander Barkov <bar@mariadb.com>2019-06-18 04:58:15 +0400
committerAlexander Barkov <bar@mariadb.com>2019-06-18 07:48:08 +0400
commit5352e9687a86094d19aaea605970487516e99ab5 (patch)
tree40f765c43fcfd46d53e56edd4753223f0000cced /mysql-test/main/mysqldump_restore.test
parent3784ed7a623ccc55a4755efeeb2f9ba06c7baf4e (diff)
downloadmariadb-git-5352e9687a86094d19aaea605970487516e99ab5.tar.gz
MDEV-17363 - Compressed columns cannot be restored from dump
In collaboration with Sergey Vojtovich <svoj@mariadb.org> The COMPRESSED clause is now a part of the data type and goes immediately after the data type and length, but before the CHARACTER SET clause, and before column attributes such as DEFAULT, COLLATE, ON UPDATE, SYSTEM VERSIONING, engine specific column attributes. In the old reduction, the COMPRESSED clause was a column attribute. New syntax: <varchar or text data type> <length> <compression> <character set> <column attributes> <varbinary or blob data type> <length> <compression> <column attributes> New syntax examples: VARCHAR(1000) COMPRESSED CHARACTER SET latin1 DEFAULT '' BLOB COMPRESSED DEFAULT '' Deprecate syntax examples: VARCHAR(1000) CHARACTER SET latin1 COMPRESSED DEFAULT '' TEXT CHARACTER SET latin1 DEFAULT '' COMPRESSED VARBINARY(1000) DEFAULT '' COMPRESSED As a side effect: - COMPRESSED is not valid as an SP label name in SQL/PSM routines any more (but it's still valid as an SP label name in sql_mode=ORACLE) - COMPRESSED is now allowed in combination with GENERATED ALWAYS AS: TEXT COMPRESSED GENERATED ALWAYS AS REPEAT('a',1000)
Diffstat (limited to 'mysql-test/main/mysqldump_restore.test')
-rw-r--r--mysql-test/main/mysqldump_restore.test24
1 files changed, 23 insertions, 1 deletions
diff --git a/mysql-test/main/mysqldump_restore.test b/mysql-test/main/mysqldump_restore.test
index 835ee3ee9e9..8d40a4f35f2 100644
--- a/mysql-test/main/mysqldump_restore.test
+++ b/mysql-test/main/mysqldump_restore.test
@@ -101,7 +101,29 @@ INSERT INTO `t1` VALUES (0x602010000280100005E71A);
let $table_name = test.t1;
--source include/mysqldump.inc
---echo # End tests
+--echo #
+--echo # Start of 10.3 tests
+--echo #
+
+--echo #
+--echo # MDEV-17363 Compressed columns cannot be restored from dump
+--echo #
+
+CREATE TABLE t1 (a VARCHAR(1000) COMPRESSED CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL);
+INSERT INTO `t1` VALUES (REPEAT('a', 256));
+--exec $MYSQL_DUMP --skip-extended-insert test --skip-comments t1 > $mysqldumpfile
+let $table_name = test.t1;
+--source include/mysqldump.inc
+
+CREATE TABLE t1 (a LONGTEXT COMPRESSED CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL);
+INSERT INTO `t1` VALUES (REPEAT('a', 256));
+--exec $MYSQL_DUMP --skip-extended-insert test --skip-comments t1 > $mysqldumpfile
+let $table_name = test.t1;
+--source include/mysqldump.inc
+
+--echo #
+--echo # End of 10.3 tests
+--echo #
--echo # Cleanup
--echo # Reset concurrent_insert to its original value