polardbxengine/mysql-test/suite/xengine/t/atomic_ddl_basic.test

166 lines
4.0 KiB
Plaintext

--source suite/xengine/include/have_xengine.inc
#
# test-ddl-log-print
#
#show variables like '%xengine_enable_print_ddl_log%';
#set @print_ddl_log_saved=@@xengine_enable_print_ddl_log;
#--error ER_GLOBAL_VARIABLE
#set xengine_enable_print_ddl_log=0;
#set global xengine_enable_print_ddl_log=0;
#--exec echo "" > $MYSQLTEST_VARDIR/log/mysqld.1.err
#create table t1(id int primary key);
#drop table t1;
#--exec grep "\[DDL record*" $MYSQLTEST_VARDIR/log/mysqld.1.err | wc -l
#set global xengine_enable_print_ddl_log=1;
#--exec echo "" > $MYSQLTEST_VARDIR/log/mysqld.1.err
#create table t1(id int primary key);
#drop table t1;
#--exec grep "\[DDL record*" $MYSQLTEST_VARDIR/log/mysqld.1.err | wc -l
#
# create/drop table
#
create table t1 (id int primary key, c1 int default 1) engine=xengine;
insert into t1(id) values (1);
select * from t1;
create table t1_like like t1;
select * from t1_like;
show create table t1_like;
drop table t1;
--error ER_NO_SUCH_TABLE
select * from t1;
drop table t1_like;
#
# instant ddl/ alter table add column
#
create table t1 (id int primary key, c1 int default 1) engine=xengine;
alter table t1 add column c2 int default 2, add column c3 char(100) default "c3c3c3c3c3c3", add column c4 varchar(100) default "c4c4c4c4c4c4c4c4c4",
add column c5 double default 5.5, add column c6 blob, add column c7 text, algorithm=instant;
select * from t1;
insert into t1(id) values(2);
select * from t1;
alter table t1 alter column c1 set default 2, algorithm=instant;
show create table t1;
alter table t1 alter column c2 set default 20, algorithm=instant;
select * from t1;
insert into t1 (id,c3) values (5,"new c3");
select * from t1;
drop table t1;
#
# inplace ddl/ alter table add/drop index
#
create table t1 (id int primary key, c1 int default 1, c2 int) engine=xengine;
insert into t1 values(1,1,1);
insert into t1 values(2,1,1);
insert into t1 values(3,1,1);
select * from t1;
alter table t1 add index idx_c1(c1), add index idx_c2(c2);
show create table t1;
alter table t1 drop index idx_c2;
show create table t1;
alter table t1 add index idx_c2_2(c2), drop index idx_c1;
show create table t1;
drop table t1;
#
# copy ddl/ other type of alter-statement except instant/inplace ddl
#
create table t1 (id int primary key, c1 int default 1) engine=xengine;
alter table t1 add column c2 int default 2, add column c3 char(100) default "c3c3c3c3c3c3", add column c4 varchar(100) default "c4c4c4c4c4c4c4c4c4",
add column c5 double default 5.5, add column c6 blob, add column c7 text, algorithm=instant;
select * from t1;
alter table t1 add column c8 int after c4;
show create table t1;
select * from t1;
alter table t1 add column c9 ENUM('a', 'b') FIRST;
select * from t1;
alter table t1 add column c10 ENUM('a', 'b');
select * from t1;
insert into t1 (id,c8) values (3, 5);
select * from t1;
drop table t1;
# add primary-key
create table t1 (c1 int) engine=xengine;
insert into t1 values (1);
alter table t1 add column id int primary key;
show create table t1;
select * from t1;
# drop columns
alter table t1 drop column id;
show create table t1;
select * from t1;
drop table t1;
#
# rename table
#
create database sbtest;
use sbtest;
create table t1(id int primary key, c1 int default 1) engine=xengine;
insert into t1 values(1,1);
create table t2(id int primary key, c1 int default 1) engine=xengine;
insert into t2 values(2,2);
alter table t1 rename to t1_2;
alter table t2 rename to t2_2;
show tables;
select * from t1_2;
select * from t2_2;
rename table t1_2 to t1_old, t2_2 to t2_new;
show tables;
select * from t1_old;
select * from t2_new;
rename table t1_old to tmp_table,
t2_new to t1,
tmp_table to t2;
select * from t1;
select * from t2;
drop table t1;
drop table t2;
#
# truncate table
#
create table t1(id int primary key, c1 int default 1) engine=xengine;
insert into t1 values(1,1),(2,2),(3,3);
select * from t1;
truncate table t1;
select * from t1;
drop table t1;
drop database sbtest;
--source suite/xengine/include/check_xengine_log_error.inc