summaryrefslogtreecommitdiff
path: root/storage/rocksdb/mysql-test/rocksdb/t/truncate_table.test
blob: 1001eeb6cde2c87803407aa07e1ca0d4cdb1b09a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
--source include/have_rocksdb.inc

# 
# TRUNCATE TABLE
#

########################################
# TODO:
# A part of the test is disabled because
# HANDLER is not supported. If it ever
# changes, the test will complain about
# NOT producing ER_ILLEGAL_HA
########################################

--disable_warnings
DROP TABLE IF EXISTS t1;
--enable_warnings

CREATE TABLE t1 (a INT PRIMARY KEY, b CHAR(8)) ENGINE=rocksdb;
TRUNCATE TABLE t1;
INSERT INTO t1 (a,b) VALUES (1,'a'), (2,'b'), (3,'c');
TRUNCATE TABLE t1;
SELECT a,b FROM t1;
DROP TABLE t1;


# Truncate resets auto-increment value on the table

CREATE TABLE t1 (a INT KEY AUTO_INCREMENT, c CHAR(8)) ENGINE=rocksdb;

#--replace_column 2 # 3 # 4 # 5 # 6 # 7 # 8 # 9 # 10 # 12 # 13 # 14 # 15 # 16 # 17 # 18 #
--replace_column 5 # 6 # 7 # 12 # 13 #
SHOW TABLE STATUS LIKE 't1';

INSERT INTO t1 (c) VALUES ('a'),('b'),('c');
#--replace_column 2 # 3 # 4 # 5 # 6 # 7 # 8 # 9 # 10 # 12 # 13 # 14 # 15 # 16 # 17 # 18 #
--replace_column 5 # 6 # 7 # 12 # 13 #
SHOW TABLE STATUS LIKE 't1';

TRUNCATE TABLE t1;
#--replace_column 2 # 3 # 4 # 5 # 6 # 7 # 8 # 9 # 10 # 12 # 13 # 14 # 15 # 16 # 17 # 18 #
--replace_column 5 # 6 # 7 # 12 # 13 #
SHOW TABLE STATUS LIKE 't1';

INSERT INTO t1 (c) VALUES ('d');
#--replace_column 2 # 3 # 4 # 5 # 6 # 7 # 8 # 9 # 10 # 12 # 13 # 14 # 15 # 16 # 17 # 18 #
--replace_column 5 # 6 # 7 # 12 # 13 #
SHOW TABLE STATUS LIKE 't1';

--sorted_result
SELECT a,c FROM t1;
DROP TABLE t1;

# Truncate closes handlers

CREATE TABLE t1 (a INT PRIMARY KEY, b CHAR(8)) ENGINE=rocksdb;
INSERT INTO t1 (a,b) VALUES (1,'a'),(2,'b'),(3,'c');

--error ER_ILLEGAL_HA
HANDLER t1 OPEN AS h1;

--disable_parsing

HANDLER h1 READ FIRST;
TRUNCATE TABLE t1;
--error ER_UNKNOWN_TABLE
HANDLER h1 READ NEXT;
HANDLER t1 OPEN AS h2;
HANDLER h2 READ FIRST;

--enable_parsing

DROP TABLE t1;