mirror of
https://github.com/MariaDB/server.git
synced 2025-12-14 00:05:44 +01:00
57 lines
2.1 KiB
Text
57 lines
2.1 KiB
Text
#
|
|
# MDEV-28943 Online alter fails under LOCK TABLE with ER_ALTER_OPERATION_NOT_SUPPORTED_REASON
|
|
#
|
|
create table t1 (f int) engine=innodb;
|
|
insert t1 values (1);
|
|
alter table t1 force, algorithm=copy, lock=none;
|
|
alter table t1 force, algorithm=inplace, lock=none;
|
|
alter table t1 force, algorithm=copy, lock=shared;
|
|
alter table t1 force, algorithm=inplace, lock=shared;
|
|
alter table t1 force, algorithm=copy, lock=exclusive;
|
|
alter table t1 force, algorithm=inplace, lock=exclusive;
|
|
lock table t1 write;
|
|
connect con1, localhost, root;
|
|
select count(*) as 'must be 0' from t1;
|
|
connection default;
|
|
alter table t1 force, algorithm=copy, lock=none;
|
|
alter table t1 force, algorithm=inplace, lock=none;
|
|
alter table t1 force, algorithm=copy, lock=shared;
|
|
alter table t1 force, algorithm=inplace, lock=shared;
|
|
alter table t1 force, algorithm=copy, lock=exclusive;
|
|
alter table t1 force, algorithm=inplace, lock=exclusive;
|
|
delete from t1;
|
|
unlock tables;
|
|
connection con1;
|
|
must be 0
|
|
0
|
|
connection default;
|
|
drop table t1;
|
|
#
|
|
# MDEV-29056 Replica SQL thread stops with 1846 error on ALTER ONLINE after LOCK WRITE
|
|
#
|
|
create table t1 (c varchar(1), key (c)) engine=innodb;
|
|
insert into t1 (c) values ('g') ;
|
|
alter table t1 add fulltext key(c), algorithm=inplace;
|
|
alter online table t1 add column s blob not null, algorithm=inplace;
|
|
ERROR 0A000: LOCK=NONE is not supported. Reason: Fulltext index creation requires a lock. Try LOCK=SHARED
|
|
lock table t1 write;
|
|
alter online table t1 add column s blob not null, algorithm=inplace;
|
|
ERROR 0A000: LOCK=NONE is not supported. Reason: Fulltext index creation requires a lock. Try LOCK=SHARED
|
|
drop table t1;
|
|
#
|
|
# MDEV-35611 Assertion failure in Diagnostics_area::sql_errno upon interrupted ALTER
|
|
#
|
|
CREATE TABLE t (a INT) ENGINE=MyISAM;
|
|
INSERT INTO t VALUES (1);
|
|
LOCK TABLE t READ;
|
|
connection con1;
|
|
SET max_statement_time=0.001;
|
|
ALTER TABLE t FORCE;
|
|
ERROR 70100: Query execution was interrupted (max_statement_time exceeded)
|
|
ALTER TABLE IF EXISTS t FORCE;
|
|
ERROR 70100: Query execution was interrupted (max_statement_time exceeded)
|
|
disconnect con1;
|
|
connection default;
|
|
UNLOCK TABLES;
|
|
DROP TABLE t;
|
|
# End of 11.4 tests
|