summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mysql-test/suite/versioning/r/truncate.result11
-rw-r--r--mysql-test/suite/versioning/t/truncate.test10
-rw-r--r--sql/table.cc1
3 files changed, 22 insertions, 0 deletions
diff --git a/mysql-test/suite/versioning/r/truncate.result b/mysql-test/suite/versioning/r/truncate.result
index fa38ec96368..ef417cd6f23 100644
--- a/mysql-test/suite/versioning/r/truncate.result
+++ b/mysql-test/suite/versioning/r/truncate.result
@@ -118,5 +118,16 @@ with system versioning;
insert into t1 (f) values ('a'), ('b'), ('c'), ('d'), ('e'), ('f'), ('g'), ('h');
delete from t1;
delete history from t1;
+drop table t1;
+#
+# MDEV-20186 Wrong result or Assertion on INSERT after DELETE HISTORY
+#
+create or replace table t1 (a int check (a > 0)) with system versioning;
+delete history from t1;
+insert into t1 values (1);
+select * from t1;
+a
+1
+drop table t1;
drop database test;
create database test;
diff --git a/mysql-test/suite/versioning/t/truncate.test b/mysql-test/suite/versioning/t/truncate.test
index 0f4800efd0b..bc9cc81c4ae 100644
--- a/mysql-test/suite/versioning/t/truncate.test
+++ b/mysql-test/suite/versioning/t/truncate.test
@@ -130,6 +130,16 @@ with system versioning;
insert into t1 (f) values ('a'), ('b'), ('c'), ('d'), ('e'), ('f'), ('g'), ('h');
delete from t1;
delete history from t1;
+drop table t1;
+
+--echo #
+--echo # MDEV-20186 Wrong result or Assertion on INSERT after DELETE HISTORY
+--echo #
+create or replace table t1 (a int check (a > 0)) with system versioning;
+delete history from t1;
+insert into t1 values (1);
+select * from t1;
+drop table t1;
drop database test;
create database test;
diff --git a/sql/table.cc b/sql/table.cc
index 4084b9c06d1..b75107ab489 100644
--- a/sql/table.cc
+++ b/sql/table.cc
@@ -4653,6 +4653,7 @@ void TABLE::init(THD *thd, TABLE_LIST *tl)
created= TRUE;
cond_selectivity= 1.0;
cond_selectivity_sampling_explain= NULL;
+ vers_write= s->versioned;
#ifdef HAVE_REPLICATION
/* used in RBR Triggers */
master_had_triggers= 0;