mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
81 lines
2.4 KiB
Text
81 lines
2.4 KiB
Text
--source include/not_msan.inc
|
|
--source include/not_embedded.inc
|
|
--source include/have_innodb.inc
|
|
|
|
--echo #
|
|
--echo # MDEV-23836: Assertion `! is_set() || m_can_overwrite_status' in
|
|
--echo # Diagnostics_area::set_error_status (interrupted ALTER TABLE under LOCK)
|
|
--echo #
|
|
|
|
SET @max_session_mem_used_save= @@max_session_mem_used;
|
|
|
|
CREATE TABLE t1 (a INT);
|
|
SELECT * FROM t1;
|
|
|
|
--error ER_NO_SUCH_TABLE
|
|
ALTER TABLE x MODIFY xx INT;
|
|
|
|
SET SESSION max_session_mem_used= 8192;
|
|
--error 0,ER_OPTION_PREVENTS_STATEMENT
|
|
LOCK TABLE t1 WRITE;
|
|
|
|
--disable_warnings
|
|
--error 0,ER_OPTION_PREVENTS_STATEMENT
|
|
ALTER TABLE t1 CHANGE COLUMN IF EXISTS b c INT;
|
|
--enable_warnings
|
|
|
|
SET SESSION max_session_mem_used = @max_session_mem_used_save;
|
|
UNLOCK TABLES;
|
|
DROP TABLE t1;
|
|
|
|
--echo #
|
|
--echo # End of 10.5 tests
|
|
--echo #
|
|
|
|
--echo #
|
|
--echo # MDEV-28943 Online alter fails under LOCK TABLE with ER_ALTER_OPERATION_NOT_SUPPORTED_REASON
|
|
--echo #
|
|
|
|
# test that any lock=xxx works under LOCK TABLES
|
|
# and that it is ignored, does not actually downgrade the lock
|
|
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;
|
|
--send 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
|
|
--reap
|
|
--connection default
|
|
drop table t1;
|
|
|
|
--echo #
|
|
--echo # MDEV-29056 Replica SQL thread stops with 1846 error on ALTER ONLINE after LOCK WRITE
|
|
--echo #
|
|
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;
|
|
--error ER_ALTER_OPERATION_NOT_SUPPORTED_REASON
|
|
alter online table t1 add column s blob not null, algorithm=inplace;
|
|
lock table t1 write;
|
|
--error ER_ALTER_OPERATION_NOT_SUPPORTED_REASON
|
|
alter online table t1 add column s blob not null, algorithm=inplace;
|
|
drop table t1;
|
|
|
|
--echo #
|
|
--echo # End of 10.11 tests
|
|
--echo #
|