| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
 100
 101
 102
 103
 104
 105
 
 | --source include/have_s3.inc
--source include/have_sequence.inc
--source include/have_innodb.inc
#
# Create unique database for running the tests
#
--source create_database.inc
--disable_warnings
drop table if exists t1,t2,t3;
--enable_warnings
--echo #
--echo # Test ALTER TABLE to and from s3
--echo #
create table t1 (a int, b int) engine=aria;
insert into t1 select seq,seq+10 from seq_1_to_1000;
alter table t1 engine=s3;
show create table t1;
alter table t1 comment="hello";
show create table t1;
alter table t1 engine=aria;
show create table t1;
alter table t1 engine=s3;
alter table t1 engine=innodb;
show create table t1;
select count(*), sum(a), sum(b) from t1;
drop table t1;
--echo #
--echo # Test ALTER TABLE to and from s3 with rename
--echo #
create table t1 (a int, b int) engine=aria select seq as a,seq+10 as b from seq_1_to_10;
alter table t1 rename to t2, engine=s3;
select count(*), sum(a), sum(b) from t2;
show create table t2;
alter table t2 rename to t3, engine=aria;
show create table t3;
select count(*), sum(a), sum(b) from t3;
drop table t3;
--echo #
--echo # Test changing options for a s3 table
--echo #
create table t1 (a int, b int) engine=aria select seq as a,seq+10 as b from seq_1_to_1000;
alter table t1 engine=s3;
alter table t1 engine=s3, compression_algorithm="zlib";
show create table t1;
select count(*), sum(a), sum(b) from t1;
drop table t1;
--echo #
--echo # Test ALTER TABLE for S3
--echo #
create table t1 (a int, b int) engine=aria select seq as a,seq+10 as b from seq_1_to_10;
alter table t1 add column c int, engine=s3;
alter table t1 add column d int;
show create table t1;
select count(*), sum(a), sum(b), sum(c), sum(d) from t1;
drop table t1;
--echo #
--echo # Test ALTER TABLE with locked table for S3
--echo #
create table t1 (a int, b int) engine=aria select seq as a,seq+10 as b from seq_1_to_10;
lock table t1 write;
alter table t1 add column c int, engine=s3;
unlock tables;
select count(*), sum(a), sum(b), sum(c) from t1;
--error ER_OPEN_AS_READONLY
lock table t1 write;
lock table t1 read;
select count(*), sum(a), sum(b), sum(c) from t1;
unlock tables;
drop table t1;
--echo #
--echo # Test RENAME TABLE
--echo #
create table t1 (a int, b int) engine=aria select seq as a, seq+10 as b from seq_1_to_10;
alter table t1 engine=s3;
rename table t1 to t3;
alter table t3 rename t2;
select count(*), sum(a), sum(b) from t2;
--replace_result $database database
--error ER_NO_SUCH_TABLE
select count(*), sum(a), sum(b) from t1;
drop table t2;
--echo # MDEV-31781 ALTER TABLE ENGINE=s3 fails
create table t (a int) engine=Aria;
--error ER_ALTER_OPERATION_NOT_SUPPORTED_REASON
alter table t engine=S3, algorithm=copy, lock=none;
#
# clean up
#
--source drop_database.inc
 |