mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-18865 Assertion `t->first->versioned_by_id()' failed in innodb_prepare_commit_versioned
Cause: * row_start != 0 treated as it exists. Probably, possible row permutations had not been taken in mind. Solution: * Checking both row_start and row_end is correct, so versioned() function is used
This commit is contained in:
committed by
Marko Mäkelä
parent
720e9bd5be
commit
4923604ee2
@ -488,4 +488,13 @@ add column row_end bigint unsigned as row end,
|
||||
add period for system_time(row_start,row_end),
|
||||
with system versioning;
|
||||
set autocommit= 1;
|
||||
# MDEV-18865 Assertion `t->first->versioned_by_id()'
|
||||
# failed in innodb_prepare_commit_versioned
|
||||
create or replace table t (x int) engine=innodb;
|
||||
insert into t values (0);
|
||||
alter table t add `row_start` bigint unsigned as row start,
|
||||
add `row_end` bigint unsigned as row end,
|
||||
add period for system_time(`row_start`,`row_end`),
|
||||
modify x int after row_start,
|
||||
with system versioning;
|
||||
create or replace database test;
|
||||
|
@ -512,4 +512,16 @@ alter table t
|
||||
with system versioning;
|
||||
set autocommit= 1;
|
||||
|
||||
--echo # MDEV-18865 Assertion `t->first->versioned_by_id()'
|
||||
--echo # failed in innodb_prepare_commit_versioned
|
||||
|
||||
create or replace table t (x int) engine=innodb;
|
||||
insert into t values (0);
|
||||
alter table t add `row_start` bigint unsigned as row start,
|
||||
add `row_end` bigint unsigned as row end,
|
||||
add period for system_time(`row_start`,`row_end`),
|
||||
modify x int after row_start,
|
||||
with system versioning;
|
||||
|
||||
|
||||
create or replace database test;
|
||||
|
Reference in New Issue
Block a user