diff options
Diffstat (limited to 'mysql-test/main/alter_table.test')
-rw-r--r-- | mysql-test/main/alter_table.test | 34 |
1 files changed, 13 insertions, 21 deletions
diff --git a/mysql-test/main/alter_table.test b/mysql-test/main/alter_table.test index 5ffa300f..48175f49 100644 --- a/mysql-test/main/alter_table.test +++ b/mysql-test/main/alter_table.test @@ -244,20 +244,6 @@ alter table t1 rename to ``; rename table t1 to ``; drop table t1; -# -# BUG#6236 - ALTER TABLE MODIFY should set implicit NOT NULL on PK columns -# -drop table if exists t1, t2; -create table t1 ( a varchar(10) not null primary key ) engine=myisam; -create table t2 ( a varchar(10) not null primary key ) engine=merge union=(t1); -flush tables; -alter table t1 modify a varchar(10); -show create table t2; -flush tables; -alter table t1 modify a varchar(10) not null; -show create table t2; -drop table if exists t1, t2; - # The following is also part of bug #6236 (CREATE TABLE didn't properly count # not null columns for primary keys) @@ -1476,16 +1462,16 @@ ALTER TABLE m1 ENABLE KEYS, ALGORITHM= INPLACE; ALTER TABLE t1 DROP INDEX i1, DROP INDEX i2, DROP INDEX i3, DROP INDEX i4; --echo # ---echo # 2: Test ALGORITHM + old_alter_table +--echo # 2: Test ALGORITHM + alter_algorithm --echo # --enable_info -SET SESSION old_alter_table= 1; +SET SESSION alter_algorithm= 1; ALTER TABLE t1 ADD INDEX i1(b); ALTER TABLE t1 ADD INDEX i2(b), ALGORITHM= DEFAULT; ALTER TABLE t1 ADD INDEX i3(b), ALGORITHM= COPY; ALTER TABLE t1 ADD INDEX i4(b), ALGORITHM= INPLACE; -SET SESSION old_alter_table= 0; +SET SESSION alter_algorithm= 0; --disable_info ALTER TABLE t1 DROP INDEX i1, DROP INDEX i2, DROP INDEX i3, DROP INDEX i4; @@ -1531,8 +1517,13 @@ ALTER TABLE t1 DROP INDEX i1, DROP INDEX i2, DROP INDEX i3, DROP INDEX i4; ALTER TABLE t1 ADD INDEX i1(b), ALGORITHM= INPLACE, LOCK= NONE; ALTER TABLE t1 ADD INDEX i2(b), ALGORITHM= INPLACE, LOCK= SHARED; ALTER TABLE t1 ADD INDEX i3(b), ALGORITHM= INPLACE, LOCK= EXCLUSIVE; ---error ER_ALTER_OPERATION_NOT_SUPPORTED_REASON +--disable_info +--disable_warnings +--error 0,ER_ALTER_OPERATION_NOT_SUPPORTED_REASON +# COPY/NONE works now, but still an error in embedded ALTER TABLE t1 ADD INDEX i4(b), ALGORITHM= COPY, LOCK= NONE; +--enable_warnings +--enable_info ALTER TABLE t1 ADD INDEX i5(b), ALGORITHM= COPY, LOCK= SHARED; ALTER TABLE t1 ADD INDEX i6(b), ALGORITHM= COPY, LOCK= EXCLUSIVE; @@ -1541,10 +1532,11 @@ ALTER TABLE m1 ENABLE KEYS, ALGORITHM= INPLACE, LOCK= NONE; --error ER_ALTER_OPERATION_NOT_SUPPORTED ALTER TABLE m1 ENABLE KEYS, ALGORITHM= INPLACE, LOCK= SHARED; ALTER TABLE m1 ENABLE KEYS, ALGORITHM= INPLACE, LOCK= EXCLUSIVE; ---error ER_ALTER_OPERATION_NOT_SUPPORTED_REASON +--disable_info +--error 0,ER_ALTER_OPERATION_NOT_SUPPORTED_REASON +# COPY/NONE works now, but still an error in embedded ALTER TABLE m1 ENABLE KEYS, ALGORITHM= COPY, LOCK= NONE; ---error ER_ALTER_OPERATION_NOT_SUPPORTED -ALTER ONLINE TABLE m1 ADD COLUMN c int; +--enable_info # This works because the lock will be SNW for the copy phase. # It will still require exclusive lock for actually enabling keys. ALTER TABLE m1 ENABLE KEYS, ALGORITHM= COPY, LOCK= SHARED; |