Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Not a Bug
-
10.4(EOL), 10.5
-
None
Description
create table t1 (a int auto_increment, b char(16), s date, e date, period for se(s,e), primary key(a,s)); |
insert into t1 values (1,'new','2019-01-01','2020-01-01'); |
update t1 for portion of se from '2019-07-01' to '2020-07-01' set b = 'updated' where a = 1; |
select * from t1; |
delete from t1 for portion of se from '2019-03-01' to '2019-10-01' where a = 1; |
select * from t1; |
 |
drop table t1; |
Actual result, 10.4 503fd211 |
update t1 for portion of se from '2019-07-01' to '2020-07-01' set b = 'updated' where a = 1; |
select * from t1; |
a b s e
|
1 updated 2019-07-01 2020-01-01
|
2 new 2019-01-01 2019-07-01
|
delete from t1 for portion of se from '2019-03-01' to '2019-10-01' where a = 1; |
select * from t1; |
a b s e
|
3 updated 2019-10-01 2020-01-01
|
2 new 2019-01-01 2019-07-01
|
The behavior is not specified in the documentation or (as far as I can tell) in the standard, but it seems obviously wrong, although understandable from the implementation point of view.
Attachments
Issue Links
- relates to
-
MDEV-22562 Assertion `next_insert_id == 0' upon UPDATE on system-versioned table
- Closed
-
MDEV-22564 Assertion `marked_for_write_or_computed()' failed in Field_long::store upon UPDATE on system- and app-versioned table
- Closed
-
MDEV-19130 Assertion `next_insert_id >= auto_inc_interval_for_cur_row.minimum()' failed in handler::update_auto_increment after error 167
- Closed