mariadb/mysql-test/suite/versioning/r/delete_history,32bit.rdiff
2025-07-28 21:29:29 +02:00

240 lines
12 KiB
Text

--- suite/versioning/r/delete_history.result
+++ suite/versioning/r/delete_history.reject
@@ -167,7 +167,7 @@
id select_type table type possible_keys key key_len ref rows filtered Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 1 100.00 Using where
Warnings:
-Note 1003 delete from `test`.`t1` FOR SYSTEM_TIME BEFORE TIMESTAMP '2039-01-01 23:00' using dual where `test`.`t1`.`row_end` < TIMESTAMP/*WITH LOCAL TIME ZONE*/'2039-01-01 23:00:00' and is_history(`test`.`t1`.`row_end`)
+Note 1003 delete from `test`.`t1` FOR SYSTEM_TIME BEFORE TIMESTAMP '2039-01-01 23:00' using dual where `test`.`t1`.`row_end` < '2039-01-01 23:00' and is_history(`test`.`t1`.`row_end`)
create or replace procedure p() delete history from t1 before system_time '2039-01-01 23:00';
call p;
select * from t1;
@@ -275,65 +275,65 @@
a row_start row_end
1 2000-01-01 00:00:00.000000 2000-01-01 00:00:01.000000
2 2000-01-01 00:00:01.000000 2000-01-01 00:00:02.000000
-3 2000-01-01 00:00:02.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+3 2000-01-01 00:00:02.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
select *, row_start, row_end from t for system_time as of @ts1;
a row_start row_end
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
2 2000-01-01 00:00:01.000000 2000-01-01 00:00:02.000000
execute immediate "select *, row_start, row_end from t for system_time as of ?" using @ts1;
a row_start row_end
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
2 2000-01-01 00:00:01.000000 2000-01-01 00:00:02.000000
prepare stmt from 'select *, row_start, row_end from t for system_time as of ?';
execute stmt using @ts1;
a row_start row_end
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
2 2000-01-01 00:00:01.000000 2000-01-01 00:00:02.000000
Execute stmt using @ts1;
a row_start row_end
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
2 2000-01-01 00:00:01.000000 2000-01-01 00:00:02.000000
select *, row_start, row_end from t for system_time as of @ts2;
a row_start row_end
-3 2000-01-01 00:00:02.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+3 2000-01-01 00:00:02.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
execute immediate "select *, row_start, row_end from t for system_time as of ?" using @ts2;
a row_start row_end
-3 2000-01-01 00:00:02.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+3 2000-01-01 00:00:02.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
execute stmt using @ts2;
a row_start row_end
-3 2000-01-01 00:00:02.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+3 2000-01-01 00:00:02.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
Execute stmt using @ts2;
a row_start row_end
-3 2000-01-01 00:00:02.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+3 2000-01-01 00:00:02.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
drop prepare stmt;
execute immediate "delete history from t before system_time @ts1";
select *, row_start, row_end from t for system_time all order by a;
a row_start row_end
1 2000-01-01 00:00:00.000000 2000-01-01 00:00:01.000000
2 2000-01-01 00:00:01.000000 2000-01-01 00:00:02.000000
-3 2000-01-01 00:00:02.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+3 2000-01-01 00:00:02.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
execute immediate "delete history from t before system_time @ts2";
select *, row_start, row_end from t for system_time all order by a;
a row_start row_end
2 2000-01-01 00:00:01.000000 2000-01-01 00:00:02.000000
-3 2000-01-01 00:00:02.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+3 2000-01-01 00:00:02.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
execute immediate "delete history from t before system_time ?" using @ts3;
select *, row_start, row_end from t for system_time all order by a;
a row_start row_end
-3 2000-01-01 00:00:02.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+3 2000-01-01 00:00:02.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
execute immediate "delete history from t before system_time ?" using @ts3;
select *, row_start, row_end from t for system_time all order by a;
a row_start row_end
-3 2000-01-01 00:00:02.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+3 2000-01-01 00:00:02.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
update t set a= a + 1 where a < 100;
set @ts4= '2000-01-01 00:00:04';
set timestamp= unix_timestamp(@ts4);
@@ -342,14 +342,14 @@
a row_start row_end
3 2000-01-01 00:00:02.000000 2000-01-01 00:00:03.000000
4 2000-01-01 00:00:03.000000 2000-01-01 00:00:04.000000
-5 2000-01-01 00:00:04.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+5 2000-01-01 00:00:04.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
execute immediate "delete history from t before system_time ?" using '2000-01-01 00:00:04';
select *, row_start, row_end from t for system_time all order by a;
a row_start row_end
4 2000-01-01 00:00:03.000000 2000-01-01 00:00:04.000000
-5 2000-01-01 00:00:04.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+5 2000-01-01 00:00:04.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
set @ts5= '2000-01-01 00:00:05';
set timestamp= unix_timestamp(@ts5);
update t set a= a + 1 where a < 100;
@@ -365,8 +365,8 @@
5 2000-01-01 00:00:04.000000 2000-01-01 00:00:05.000000
6 2000-01-01 00:00:05.000000 2000-01-01 00:00:06.000000
7 2000-01-01 00:00:06.000000 2000-01-01 00:00:07.000000
-8 2000-01-01 00:00:07.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+8 2000-01-01 00:00:07.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
prepare stmt from 'delete history from t before system_time ?';
execute stmt using @ts4;
select *, row_start, row_end from t for system_time all order by a;
@@ -375,36 +375,36 @@
5 2000-01-01 00:00:04.000000 2000-01-01 00:00:05.000000
6 2000-01-01 00:00:05.000000 2000-01-01 00:00:06.000000
7 2000-01-01 00:00:06.000000 2000-01-01 00:00:07.000000
-8 2000-01-01 00:00:07.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+8 2000-01-01 00:00:07.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
execute stmt using @ts5;
select *, row_start, row_end from t for system_time all order by a;
a row_start row_end
5 2000-01-01 00:00:04.000000 2000-01-01 00:00:05.000000
6 2000-01-01 00:00:05.000000 2000-01-01 00:00:06.000000
7 2000-01-01 00:00:06.000000 2000-01-01 00:00:07.000000
-8 2000-01-01 00:00:07.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+8 2000-01-01 00:00:07.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
execute stmt using @ts6;
select *, row_start, row_end from t for system_time all order by a;
a row_start row_end
6 2000-01-01 00:00:05.000000 2000-01-01 00:00:06.000000
7 2000-01-01 00:00:06.000000 2000-01-01 00:00:07.000000
-8 2000-01-01 00:00:07.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+8 2000-01-01 00:00:07.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
execute stmt using '2000-01-01 00:00:06';
select *, row_start, row_end from t for system_time all order by a;
a row_start row_end
6 2000-01-01 00:00:05.000000 2000-01-01 00:00:06.000000
7 2000-01-01 00:00:06.000000 2000-01-01 00:00:07.000000
-8 2000-01-01 00:00:07.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+8 2000-01-01 00:00:07.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
execute stmt using '2000-01-01 00:00:06.000001';
select *, row_start, row_end from t for system_time all order by a;
a row_start row_end
7 2000-01-01 00:00:06.000000 2000-01-01 00:00:07.000000
-8 2000-01-01 00:00:07.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+8 2000-01-01 00:00:07.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
set @ts8= '2000-01-01 00:00:08';
set timestamp= unix_timestamp(@ts8);
delete from t;
@@ -438,8 +438,8 @@
1 2000-01-01 00:00:00.000000 2000-01-01 00:00:01.000000
2 2000-01-01 00:00:01.000000 2000-01-01 00:00:02.000000
3 2000-01-01 00:00:02.000000 2000-01-01 00:00:03.000000
-4 2000-01-01 00:00:03.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+4 2000-01-01 00:00:03.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
execute stmt using @ts1, 0;
Warnings:
Warning 1292 Truncated incorrect DOUBLE value: '2000-01-01 00:00:01'
@@ -452,40 +452,40 @@
1 2000-01-01 00:00:00.000000 2000-01-01 00:00:01.000000
2 2000-01-01 00:00:01.000000 2000-01-01 00:00:02.000000
3 2000-01-01 00:00:02.000000 2000-01-01 00:00:03.000000
-4 2000-01-01 00:00:03.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+4 2000-01-01 00:00:03.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
execute stmt using @ts2, 0;
select *, row_start, row_end from t for system_time all order by a;
a row_start row_end
2 2000-01-01 00:00:01.000000 2000-01-01 00:00:02.000000
3 2000-01-01 00:00:02.000000 2000-01-01 00:00:03.000000
-4 2000-01-01 00:00:03.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+4 2000-01-01 00:00:03.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
execute stmt using @@timestamp, NULL;
select *, row_start, row_end from t for system_time all order by a;
a row_start row_end
2 2000-01-01 00:00:01.000000 2000-01-01 00:00:02.000000
3 2000-01-01 00:00:02.000000 2000-01-01 00:00:03.000000
-4 2000-01-01 00:00:03.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+4 2000-01-01 00:00:03.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
execute stmt using NULL, NULL;
select *, row_start, row_end from t for system_time all order by a;
a row_start row_end
2 2000-01-01 00:00:01.000000 2000-01-01 00:00:02.000000
3 2000-01-01 00:00:02.000000 2000-01-01 00:00:03.000000
-4 2000-01-01 00:00:03.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+4 2000-01-01 00:00:03.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
execute stmt using @ts2, 1;
select *, row_start, row_end from t for system_time all order by a;
a row_start row_end
3 2000-01-01 00:00:02.000000 2000-01-01 00:00:03.000000
-4 2000-01-01 00:00:03.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+4 2000-01-01 00:00:03.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
execute stmt using @ts2, @ts2;
select *, row_start, row_end from t for system_time all order by a;
a row_start row_end
-4 2000-01-01 00:00:03.000000 2106-02-07 06:28:15.999999
-100 2000-01-01 00:00:00.000000 2106-02-07 06:28:15.999999
+4 2000-01-01 00:00:03.000000 2038-01-19 03:14:07.999999
+100 2000-01-01 00:00:00.000000 2038-01-19 03:14:07.999999
delete from t;
select *, row_start, row_end from t for system_time all order by a;
a row_start row_end