diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2019-11-20 14:12:53 +0800 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2019-11-20 14:12:53 +0800 |
commit | 6cedb671e99038f1a10e0d8504f835aaabed9780 (patch) | |
tree | 62234b9b0a1380114e584c4e2c2c3ca3f863e52b /mysql-test/suite/innodb/r/instant_alter.result | |
parent | 1c9240633792ecce562358d86cd8d2c18b94ae32 (diff) | |
download | mariadb-git-6cedb671e99038f1a10e0d8504f835aaabed9780.tar.gz |
MDEV-21088 Table cannot be loaded after instant ADD/DROP COLUMN
btr_cur_instant_init_low(): Accurately parse the metadata record
header for ROW_FORMAT=DYNAMIC and ROW_FORMAT=COMPACT. CHAR columns
used to be unnecessarily written as nonempty strings of bytes.
Diffstat (limited to 'mysql-test/suite/innodb/r/instant_alter.result')
-rw-r--r-- | mysql-test/suite/innodb/r/instant_alter.result | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/mysql-test/suite/innodb/r/instant_alter.result b/mysql-test/suite/innodb/r/instant_alter.result index b7bc5abb81f..e03ddfb9956 100644 --- a/mysql-test/suite/innodb/r/instant_alter.result +++ b/mysql-test/suite/innodb/r/instant_alter.result @@ -904,6 +904,14 @@ a b c 1 a NULL 2 bah 3 DROP TABLE t1; +CREATE TABLE t1(a CHAR(5) CHARACTER SET utf8 PRIMARY KEY) ENGINE=InnoDB ROW_FORMAT=REDUNDANT; +INSERT INTO t1 VALUES('barf'); +ALTER TABLE t1 ADD b INT FIRST, ALGORITHM=INSTANT; +ALTER TABLE t1 ADD vb INT AS (b); +SELECT * FROM t1; +b a vb +NULL barf NULL +DROP TABLE t1; CREATE TABLE t1 (id INT PRIMARY KEY, c2 INT UNIQUE, c3 POINT NOT NULL DEFAULT ST_GeomFromText('POINT(3 4)'), @@ -1753,6 +1761,14 @@ a b c 1 a NULL 2 bah 3 DROP TABLE t1; +CREATE TABLE t1(a CHAR(5) CHARACTER SET utf8 PRIMARY KEY) ENGINE=InnoDB ROW_FORMAT=COMPACT; +INSERT INTO t1 VALUES('barf'); +ALTER TABLE t1 ADD b INT FIRST, ALGORITHM=INSTANT; +ALTER TABLE t1 ADD vb INT AS (b); +SELECT * FROM t1; +b a vb +NULL barf NULL +DROP TABLE t1; CREATE TABLE t1 (id INT PRIMARY KEY, c2 INT UNIQUE, c3 POINT NOT NULL DEFAULT ST_GeomFromText('POINT(3 4)'), @@ -2602,12 +2618,20 @@ a b c 1 a NULL 2 bah 3 DROP TABLE t1; +CREATE TABLE t1(a CHAR(5) CHARACTER SET utf8 PRIMARY KEY) ENGINE=InnoDB ROW_FORMAT=DYNAMIC; +INSERT INTO t1 VALUES('barf'); +ALTER TABLE t1 ADD b INT FIRST, ALGORITHM=INSTANT; +ALTER TABLE t1 ADD vb INT AS (b); +SELECT * FROM t1; +b a vb +NULL barf NULL +DROP TABLE t1; disconnect analyze; SELECT variable_value-@old_instant instants FROM information_schema.global_status WHERE variable_name = 'innodb_instant_alter_column'; instants -184 +187 SET GLOBAL innodb_purge_rseg_truncate_frequency= @saved_frequency; # # MDEV-18266: Changing an index comment unnecessarily rebuilds index |