summaryrefslogtreecommitdiff
path: root/mysql-test/suite/versioning/t/foreign.test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/suite/versioning/t/foreign.test')
-rw-r--r--mysql-test/suite/versioning/t/foreign.test43
1 files changed, 43 insertions, 0 deletions
diff --git a/mysql-test/suite/versioning/t/foreign.test b/mysql-test/suite/versioning/t/foreign.test
index 453ddd34034..831ba518337 100644
--- a/mysql-test/suite/versioning/t/foreign.test
+++ b/mysql-test/suite/versioning/t/foreign.test
@@ -458,4 +458,47 @@ insert into t2 values (1), (1);
delete from t2;
drop tables t2, t1;
+--echo #
+--echo # MDEV-20729 Fix REFERENCES constraint in column definition
+--echo #
+create or replace table t1(
+ id int
+);
+--echo # system fields can't be foreign keys:
+--replace_result $sys_datatype_expl SYS_DATATYPE
+--error ER_PARSE_ERROR,ER_PARSE_ERROR
+eval create or replace table t2(
+ x int,
+ sys_start $sys_datatype_expl as row start references t1(id),
+ sys_end $sys_datatype_expl as row end,
+ period for system_time(sys_start, sys_end)
+) engine innodb with system versioning;
+--replace_result $sys_datatype_expl SYS_DATATYPE
+--error ER_PARSE_ERROR,ER_PARSE_ERROR
+eval create or replace table t2(
+ x int,
+ sys_start $sys_datatype_expl as row start,
+ sys_end $sys_datatype_expl as row end references t1(id),
+ period for system_time(sys_start, sys_end)
+) engine innodb with system versioning;
+--replace_result $sys_datatype_expl SYS_DATATYPE
+--error ER_CANT_CREATE_TABLE
+eval create or replace table t2(
+ x int,
+ sys_start $sys_datatype_expl as row start,
+ sys_end $sys_datatype_expl as row end,
+ period for system_time(sys_start, sys_end),
+ foreign key (sys_start) references t1(id)
+) engine innodb with system versioning;
+--replace_result $sys_datatype_expl SYS_DATATYPE
+--error ER_CANT_CREATE_TABLE
+eval create or replace table t2(
+ x int,
+ sys_start $sys_datatype_expl as row start,
+ sys_end $sys_datatype_expl as row end,
+ period for system_time(sys_start, sys_end),
+ foreign key (sys_end) references t1(id)
+) engine innodb with system versioning;
+drop table t1;
+
--source suite/versioning/common_finish.inc