summaryrefslogtreecommitdiffstats
path: root/mysql-test/suite/versioning/t/alter.test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/suite/versioning/t/alter.test')
-rw-r--r--mysql-test/suite/versioning/t/alter.test67
1 files changed, 67 insertions, 0 deletions
diff --git a/mysql-test/suite/versioning/t/alter.test b/mysql-test/suite/versioning/t/alter.test
index 61653550..44f52ddf 100644
--- a/mysql-test/suite/versioning/t/alter.test
+++ b/mysql-test/suite/versioning/t/alter.test
@@ -680,6 +680,71 @@ alter table t1
# cleanup
drop table t1;
+--echo #
+--echo # MDEV-20545 Assertion (col.vers_sys_end()) upon inplace ALTER with virtual columns
+--echo #
+create table t1 (
+ a int,
+ va int as (a) virtual,
+ b int,
+ vb int as (b) virtual,
+ c int,
+ vc int as (c) virtual,
+ d int,
+ e int,
+ index(va)
+) engine=innodb with system versioning;
+replace into t1 () values (),();
+set statement system_versioning_alter_history=keep for alter table t1 drop e;
+alter table t1 algorithm=inplace, drop system versioning;
+# cleanup
+drop table t1;
+
+--echo #
+--echo # MDEV-20765 Assertion (type.vers_sys_end()) upon inplace ALTER with virtual columns
+--echo #
+create table t1 (
+ a int,
+ b int as (a) virtual,
+ c int,
+ d int as (c) virtual,
+ e int,
+ f int as (e) virtual,
+ g int,
+ h int,
+ i int,
+ index(d),
+ key(h),
+ foreign key (g) references t1 (h)
+) engine=innodb with system versioning;
+set system_versioning_alter_history= keep;
+alter table t1 drop column i;
+insert into t1 (g,h) values (1,1);
+# cleanup
+drop table t1;
+
+--echo #
+--echo # MDEV-29034 Assertion (o->ind == vers_start) upon inplace ALTER with virtual columns
+--echo #
+create table b (
+ pk integer auto_increment,
+ col_int_key integer,
+ col_varchar_key varchar(1),
+ o bit, n bit,
+ h float as ( n + 2 ) virtual,
+ v bit,
+ primary key (pk),
+ key (col_varchar_key, col_int_key)
+) engine = innodb;
+set `system_versioning_alter_history`= keep;
+alter table `b` add system versioning;
+alter table `b` add column if not exists ( w bit, v serial );
+alter table `b` add column if not exists ( p bit );
+drop table `b`;
+
+--echo #
+--echo # End of 10.4 tests
+--echo #
--echo #
--echo # MDEV-21941 RENAME doesn't work for system time or period fields
@@ -702,4 +767,6 @@ show create table t1;
# cleanup
drop table t1;
+--echo #
--echo # End of 10.5 tests
+--echo #