1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-27 18:02:13 +03:00

MDEV-14687 DELETE HISTORY in prepared stmt crash [fixes #421]

Also fixes broken truncate after 617e108fb6
This commit is contained in:
Aleksey Midenkov
2017-12-20 16:12:32 +03:00
parent c5d0c38efc
commit 7eff2080fd
4 changed files with 52 additions and 25 deletions

View File

@ -28,15 +28,23 @@ select * from t for system_time all;
a
11
22
1
2
delete history from t before system_time timestamp now(6);
prepare stmt from 'delete history from t before system_time timestamp now(6)';
execute stmt;
drop prepare stmt;
select * from t for system_time all;
a
11
22
1
2
delete from t;
create or replace procedure truncate_sp()
begin
delete history from t before system_time timestamp now(6);
end~~
call truncate_sp;
select * from t for system_time all;
a
drop procedure truncate_sp;
### Issue #399, truncate partitioned table is now unimplemented
create or replace table t (a int)
with system versioning
@ -50,12 +58,14 @@ create or replace table t (i int) with system versioning;
delete history from t before system_time now();
create or replace view v as select * from t;
delete history from v before system_time now();
ERROR HY000: TRUNCATE table_name TO doesn't work with VIEWs
ERROR HY000: DELETE HISTORY from VIEW is prohibited
create or replace table t (i int);
delete history from t before system_time now();
ERROR HY000: Table `t` is not system-versioned
create or replace view v as select * from t;
delete history from v before system_time now();
ERROR HY000: TRUNCATE table_name TO doesn't work with VIEWs
ERROR HY000: DELETE HISTORY from VIEW is prohibited
prepare stmt from 'delete history from t before system_time now()';
ERROR HY000: Table `t` is not system-versioned
drop table t;
drop view v;