MDEV-20186 Wrong result or Assertion on INSERT after DELETE HISTORY

Fix reinitialize vers_write on table reopen.
This commit is contained in:
Aleksey Midenkov 2019-07-26 17:29:52 +03:00
parent 29df1003d9
commit 00a254cc06
3 changed files with 22 additions and 0 deletions

View File

@ -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;

View File

@ -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;

View File

@ -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;