summaryrefslogtreecommitdiff
path: root/storage/myisammrg/mysql-test/storage_engine/parts/optimize_table.rdiff
blob: 350d93fe91fb5b5c5ba62cc7a44b8b0d5158dd0d (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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
3,25c3,12
< INSERT INTO t1 (a,b) VALUES (1,'a'),(2,'b'),(3,'c'),(2,'d'),(4,'e'),(100,'f'),(101,'g');
< CREATE TABLE t2 (a <INT_COLUMN>, b <CHAR_COLUMN>) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS> PARTITION BY RANGE(a) (
< PARTITION p0 VALUES LESS THAN (100),
< PARTITION p1 VALUES LESS THAN MAXVALUE
< );
< INSERT INTO t2 (a,b) SELECT a, b FROM t1;
< INSERT INTO t1 (a,b) VALUES (3,'c'),(4,'d');
< ALTER TABLE t1 OPTIMIZE PARTITION p1;
< Table	Op	Msg_type	Msg_text
< test.t1	optimize	status	OK
< INSERT INTO t2 (a,b) VALUES (4,'d');
< ALTER TABLE t2 OPTIMIZE PARTITION p0 NO_WRITE_TO_BINLOG;
< Table	Op	Msg_type	Msg_text
< test.t2	optimize	status	OK
< INSERT INTO t1 (a,b) VALUES (6,'f');
< ALTER TABLE t1 OPTIMIZE PARTITION ALL LOCAL;
< Table	Op	Msg_type	Msg_text
< test.t1	optimize	status	OK
< INSERT INTO t2 (a,b) VALUES (5,'e');
< ALTER TABLE t2 OPTIMIZE PARTITION p1,p0;
< Table	Op	Msg_type	Msg_text
< test.t2	optimize	status	OK
< DROP TABLE t1, t2;
---
> ERROR HY000: Engine cannot be used in partitioned tables
> # ERROR: Statement ended with errno 1572, errname ER_PARTITION_MERGE_ERROR (expected to succeed)
> # ------------ UNEXPECTED RESULT ------------
> # [ CREATE TABLE t1 (a INT(11) /*!*/ /*Custom column options*/, b CHAR(8) /*!*/ /*Custom column options*/) ENGINE=MRG_MYISAM /*!*/ /*Custom table options*/ UNION(mrg.t1) INSERT_METHOD=LAST PARTITION BY HASH(a) PARTITIONS 2 ]
> # The statement|command finished with ER_PARTITION_MERGE_ERROR.
> # Partitions or the mix could be unsupported|malfunctioning, or the problem was caused by previous errors. 
> # You can change the engine code, or create an rdiff, or disable the test by adding it to disabled.def.
> # Further in this test, the message might sometimes be suppressed; a part of the test might be skipped.
> # Also, this problem may cause a chain effect (more errors of different kinds in the test).
> # -------------------------------------------
27a15,16
> ERROR HY000: Engine cannot be used in partitioned tables
> # ERROR: Statement ended with errno 1572, errname ER_PARTITION_MERGE_ERROR (expected to succeed)
28a18
> ERROR 42S02: Table 'test.t1' doesn't exist
29a20,21
> ERROR HY000: Engine cannot be used in partitioned tables
> # ERROR: Statement ended with errno 1572, errname ER_PARTITION_MERGE_ERROR (expected to succeed)
30a23
> ERROR 42S02: Table 'test.t1' doesn't exist
33c26,27
< test.t1	optimize	status	OK
---
> test.t1	optimize	Error	Table 'test.t1' doesn't exist
> test.t1	optimize	status	Operation failed
34a29
> ERROR 42S02: Table 'test.t2' doesn't exist
37c32,33
< test.t2	optimize	status	OK
---
> test.t2	optimize	Error	Table 'test.t2' doesn't exist
> test.t2	optimize	status	Operation failed
38a35
> ERROR 42S02: Table 'test.t2' doesn't exist
39a37
> ERROR 42S02: Table 'test.t1' doesn't exist
42,43c40,43
< test.t1	optimize	status	OK
< test.t2	optimize	status	OK
---
> test.t1	optimize	Error	Table 'test.t1' doesn't exist
> test.t1	optimize	status	Operation failed
> test.t2	optimize	Error	Table 'test.t2' doesn't exist
> test.t2	optimize	status	Operation failed
46,47c46,49
< test.t1	optimize	status	OK
< test.t2	optimize	status	OK
---
> test.t1	optimize	Error	Table 'test.t1' doesn't exist
> test.t1	optimize	status	Operation failed
> test.t2	optimize	Error	Table 'test.t2' doesn't exist
> test.t2	optimize	status	Operation failed
48a51
> ERROR 42S02: Unknown table 't1,t2'
49a53,54
> ERROR HY000: Engine cannot be used in partitioned tables
> # ERROR: Statement ended with errno 1572, errname ER_PARTITION_MERGE_ERROR (expected to succeed)
50a56
> ERROR 42S02: Table 'test.t1' doesn't exist
53c59,60
< test.t1	optimize	status	OK
---
> test.t1	optimize	Error	Table 'test.t1' doesn't exist
> test.t1	optimize	status	Operation failed
54a62
> ERROR 42S02: Unknown table 't1'