summaryrefslogtreecommitdiff
path: root/mysql-test/suite
diff options
context:
space:
mode:
authorSergei Golubchik <serg@mariadb.org>2017-12-16 21:33:43 +0100
committerAleksey Midenkov <midenok@gmail.com>2017-12-19 16:35:38 +0300
commit617e108fb6e2bc24e5c9badb94e7d8eaa65d8851 (patch)
treeb7c0bc622483a2abd3b642e194609da625e8d52d /mysql-test/suite
parentee68d019d1e059fa0fcf9e63bd97176dd46582c2 (diff)
downloadmariadb-git-617e108fb6e2bc24e5c9badb94e7d8eaa65d8851.tar.gz
s/TRUNCATE ... TO/DELETE HISTORY FROM ... BEFORE/
Diffstat (limited to 'mysql-test/suite')
-rw-r--r--mysql-test/suite/versioning/r/truncate.result21
-rw-r--r--mysql-test/suite/versioning/r/truncate_privilege.result4
-rw-r--r--mysql-test/suite/versioning/t/truncate.test18
-rw-r--r--mysql-test/suite/versioning/t/truncate_privilege.test4
4 files changed, 25 insertions, 22 deletions
diff --git a/mysql-test/suite/versioning/r/truncate.result b/mysql-test/suite/versioning/r/truncate.result
index 63388f85d60..36ac4fe5ed3 100644
--- a/mysql-test/suite/versioning/r/truncate.result
+++ b/mysql-test/suite/versioning/r/truncate.result
@@ -1,5 +1,5 @@
create table t (a int);
-truncate t to system_time now();
+delete history from t before system_time now();
ERROR HY000: System versioning required: t
create or replace table t (a int) with system versioning;
insert into t values (1);
@@ -7,7 +7,7 @@ update t set a=2;
set @test = 'correct';
create trigger trg_before before delete on t for each row set @test = 'incorrect';
create trigger trg_after after delete on t for each row set @test = 'incorrect';
-truncate t to system_time now(6);
+delete history from t before system_time now(6);
select @test from t;
@test
correct
@@ -23,17 +23,20 @@ a
22
1
2
-truncate t to system_time timestamp @ts1;
+delete history from t before system_time timestamp @ts1;
select * from t for system_time all;
a
11
22
+1
2
-truncate table t to system_time timestamp now(6);
+delete history from t before system_time timestamp now(6);
select * from t for system_time all;
a
11
22
+1
+2
### Issue #399, truncate partitioned table is now unimplemented
create or replace table t (a int)
with system versioning
@@ -41,18 +44,18 @@ engine myisam
partition by system_time (
partition p0 history,
partition pn current);
-truncate table t to system_time current_timestamp;
+delete history from t before system_time current_timestamp;
ERROR 42000: The used command is not allowed with this MariaDB version
create or replace table t (i int) with system versioning;
-truncate t to system_time now();
+delete history from t before system_time now();
create or replace view v as select * from t;
-truncate v to system_time now();
+delete history from v before system_time now();
ERROR HY000: TRUNCATE table_name TO doesn't work with VIEWs
create or replace table t (i int);
-truncate t to system_time now();
+delete history from t before system_time now();
ERROR HY000: System versioning required: t
create or replace view v as select * from t;
-truncate v to system_time now();
+delete history from v before system_time now();
ERROR HY000: TRUNCATE table_name TO doesn't work with VIEWs
drop table t;
drop view v;
diff --git a/mysql-test/suite/versioning/r/truncate_privilege.result b/mysql-test/suite/versioning/r/truncate_privilege.result
index 9590d93809a..e378407afde 100644
--- a/mysql-test/suite/versioning/r/truncate_privilege.result
+++ b/mysql-test/suite/versioning/r/truncate_privilege.result
@@ -10,7 +10,7 @@ connection user1;
show grants;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
-truncate mysqltest.t to system_time now();
+delete history from mysqltest.t before system_time now();
ERROR 42000: DELETE VERSIONING ROWS command denied to user 'mysqltest_1'@'localhost' for table 't'
connection root;
grant delete history on mysqltest.* to mysqltest_1@localhost;
@@ -21,7 +21,7 @@ Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT DELETE VERSIONING ROWS ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
GRANT DELETE VERSIONING ROWS ON `mysqltest`.`t` TO 'mysqltest_1'@'localhost'
-truncate mysqltest.t to system_time now();
+delete history from mysqltest.t before system_time now();
connection root;
grant all on *.* to mysqltest_1@localhost;
show grants for mysqltest_1@localhost;
diff --git a/mysql-test/suite/versioning/t/truncate.test b/mysql-test/suite/versioning/t/truncate.test
index e732414f826..72da15b56d9 100644
--- a/mysql-test/suite/versioning/t/truncate.test
+++ b/mysql-test/suite/versioning/t/truncate.test
@@ -2,7 +2,7 @@
create table t (a int);
--error ER_VERSIONING_REQUIRED
-truncate t to system_time now();
+delete history from t before system_time now();
# TRUNCATE is not DELETE and trigger must not be called.
create or replace table t (a int) with system versioning;
@@ -11,7 +11,7 @@ update t set a=2;
set @test = 'correct';
create trigger trg_before before delete on t for each row set @test = 'incorrect';
create trigger trg_after after delete on t for each row set @test = 'incorrect';
-truncate t to system_time now(6);
+delete history from t before system_time now(6);
select @test from t;
drop table t;
@@ -23,9 +23,9 @@ set @ts1=now(6);
--real_sleep 0.01
update t set a=22 where a=2;
select * from t for system_time all;
-truncate t to system_time timestamp @ts1;
+delete history from t before system_time timestamp @ts1;
select * from t for system_time all;
-truncate table t to system_time timestamp now(6);
+delete history from t before system_time timestamp now(6);
select * from t for system_time all;
--echo ### Issue #399, truncate partitioned table is now unimplemented
@@ -38,20 +38,20 @@ partition by system_time (
partition pn current);
--error ER_NOT_ALLOWED_COMMAND
-truncate table t to system_time current_timestamp;
+delete history from t before system_time current_timestamp;
create or replace table t (i int) with system versioning;
-truncate t to system_time now();
+delete history from t before system_time now();
create or replace view v as select * from t;
--error ER_VERS_TRUNCATE_TO_VIEW
-truncate v to system_time now();
+delete history from v before system_time now();
create or replace table t (i int);
--error ER_VERSIONING_REQUIRED
-truncate t to system_time now();
+delete history from t before system_time now();
create or replace view v as select * from t;
--error ER_VERS_TRUNCATE_TO_VIEW
-truncate v to system_time now();
+delete history from v before system_time now();
drop table t;
drop view v;
diff --git a/mysql-test/suite/versioning/t/truncate_privilege.test b/mysql-test/suite/versioning/t/truncate_privilege.test
index c2212570555..dcdad59039a 100644
--- a/mysql-test/suite/versioning/t/truncate_privilege.test
+++ b/mysql-test/suite/versioning/t/truncate_privilege.test
@@ -23,7 +23,7 @@ create table mysqltest.t (a int) with system versioning;
connection user1;
show grants;
--error ER_TABLEACCESS_DENIED_ERROR
-truncate mysqltest.t to system_time now();
+delete history from mysqltest.t before system_time now();
connection root;
grant delete history on mysqltest.* to mysqltest_1@localhost;
@@ -31,7 +31,7 @@ grant delete history on mysqltest.t to mysqltest_1@localhost;
connection user1;
show grants;
-truncate mysqltest.t to system_time now();
+delete history from mysqltest.t before system_time now();
connection root;
grant all on *.* to mysqltest_1@localhost;