~ubuntu-branches/ubuntu/trusty/mysql-5.6/trusty

« back to all changes in this revision

Viewing changes to mysql-test/suite/parts/r/partition_debug_myisam.result

  • Committer: Package Import Robot
  • Author(s): James Page
  • Date: 2014-02-12 11:54:27 UTC
  • Revision ID: package-import@ubuntu.com-20140212115427-oq6tfsqxl1wuwehi
Tags: upstream-5.6.15
ImportĀ upstreamĀ versionĀ 5.6.15

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
DROP TABLE IF EXISTS t1;
 
2
# Test crash and failure recovery in fast_alter_partition_table.
 
3
#
 
4
# Bug#53676: Unexpected errors and possible table corruption on
 
5
# ADD PARTITION and LOCK TABLE
 
6
# Bug#53770: Server crash at handler.cc:2076 on LOAD DATA
 
7
# after timed out COALESCE PARTITION
 
8
# Extended crash recovery testing of fast_alter_partition_table.
 
9
call mtr.add_suppression("Attempting backtrace. You can use the following information to find out");
 
10
# Crash testing ADD PARTITION
 
11
SET SESSION debug="+d,crash_add_partition_1";
 
12
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
13
ENGINE = 'MyISAM'
 
14
PARTITION BY LIST (a)
 
15
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
16
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
17
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
18
# State before crash
 
19
t1#P#p0.MYD
 
20
t1#P#p0.MYI
 
21
t1#P#p10.MYD
 
22
t1#P#p10.MYI
 
23
t1.frm
 
24
t1.par
 
25
SHOW CREATE TABLE t1;
 
26
Table   Create Table
 
27
t1      CREATE TABLE `t1` (
 
28
  `a` int(11) DEFAULT NULL,
 
29
  `b` varchar(64) DEFAULT NULL
 
30
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
31
/*!50100 PARTITION BY LIST (a)
 
32
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
33
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
34
SELECT * FROM t1;
 
35
a       b
 
36
1       Original from partition p0
 
37
11      Original from partition p1
 
38
12      Original from partition p1
 
39
13      Original from partition p1
 
40
14      Original from partition p1
 
41
2       Original from partition p0
 
42
3       Original from partition p0
 
43
4       Original from partition p0
 
44
ALTER TABLE t1 ADD PARTITION
 
45
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
46
ERROR HY000: Lost connection to MySQL server during query
 
47
# State after crash (before recovery)
 
48
t1#P#p0.MYD
 
49
t1#P#p0.MYI
 
50
t1#P#p10.MYD
 
51
t1#P#p10.MYI
 
52
t1.frm
 
53
t1.par
 
54
# State after crash recovery
 
55
t1#P#p0.MYD
 
56
t1#P#p0.MYI
 
57
t1#P#p10.MYD
 
58
t1#P#p10.MYI
 
59
t1.frm
 
60
t1.par
 
61
SHOW CREATE TABLE t1;
 
62
Table   Create Table
 
63
t1      CREATE TABLE `t1` (
 
64
  `a` int(11) DEFAULT NULL,
 
65
  `b` varchar(64) DEFAULT NULL
 
66
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
67
/*!50100 PARTITION BY LIST (a)
 
68
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
69
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
70
SELECT * FROM t1;
 
71
a       b
 
72
1       Original from partition p0
 
73
11      Original from partition p1
 
74
12      Original from partition p1
 
75
13      Original from partition p1
 
76
14      Original from partition p1
 
77
2       Original from partition p0
 
78
3       Original from partition p0
 
79
4       Original from partition p0
 
80
DROP TABLE t1;
 
81
SET SESSION debug="-d,crash_add_partition_1";
 
82
SET SESSION debug="+d,crash_add_partition_2";
 
83
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
84
ENGINE = 'MyISAM'
 
85
PARTITION BY LIST (a)
 
86
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
87
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
88
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
89
# State before crash
 
90
t1#P#p0.MYD
 
91
t1#P#p0.MYI
 
92
t1#P#p10.MYD
 
93
t1#P#p10.MYI
 
94
t1.frm
 
95
t1.par
 
96
SHOW CREATE TABLE t1;
 
97
Table   Create Table
 
98
t1      CREATE TABLE `t1` (
 
99
  `a` int(11) DEFAULT NULL,
 
100
  `b` varchar(64) DEFAULT NULL
 
101
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
102
/*!50100 PARTITION BY LIST (a)
 
103
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
104
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
105
SELECT * FROM t1;
 
106
a       b
 
107
1       Original from partition p0
 
108
11      Original from partition p1
 
109
12      Original from partition p1
 
110
13      Original from partition p1
 
111
14      Original from partition p1
 
112
2       Original from partition p0
 
113
3       Original from partition p0
 
114
4       Original from partition p0
 
115
ALTER TABLE t1 ADD PARTITION
 
116
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
117
ERROR HY000: Lost connection to MySQL server during query
 
118
# State after crash (before recovery)
 
119
#sql-t1.frm
 
120
#sql-t1.par
 
121
t1#P#p0.MYD
 
122
t1#P#p0.MYI
 
123
t1#P#p10.MYD
 
124
t1#P#p10.MYI
 
125
t1.frm
 
126
t1.par
 
127
# State after crash recovery
 
128
t1#P#p0.MYD
 
129
t1#P#p0.MYI
 
130
t1#P#p10.MYD
 
131
t1#P#p10.MYI
 
132
t1.frm
 
133
t1.par
 
134
SHOW CREATE TABLE t1;
 
135
Table   Create Table
 
136
t1      CREATE TABLE `t1` (
 
137
  `a` int(11) DEFAULT NULL,
 
138
  `b` varchar(64) DEFAULT NULL
 
139
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
140
/*!50100 PARTITION BY LIST (a)
 
141
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
142
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
143
SELECT * FROM t1;
 
144
a       b
 
145
1       Original from partition p0
 
146
11      Original from partition p1
 
147
12      Original from partition p1
 
148
13      Original from partition p1
 
149
14      Original from partition p1
 
150
2       Original from partition p0
 
151
3       Original from partition p0
 
152
4       Original from partition p0
 
153
DROP TABLE t1;
 
154
SET SESSION debug="-d,crash_add_partition_2";
 
155
SET SESSION debug="+d,crash_add_partition_3";
 
156
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
157
ENGINE = 'MyISAM'
 
158
PARTITION BY LIST (a)
 
159
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
160
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
161
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
162
# State before crash
 
163
t1#P#p0.MYD
 
164
t1#P#p0.MYI
 
165
t1#P#p10.MYD
 
166
t1#P#p10.MYI
 
167
t1.frm
 
168
t1.par
 
169
SHOW CREATE TABLE t1;
 
170
Table   Create Table
 
171
t1      CREATE TABLE `t1` (
 
172
  `a` int(11) DEFAULT NULL,
 
173
  `b` varchar(64) DEFAULT NULL
 
174
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
175
/*!50100 PARTITION BY LIST (a)
 
176
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
177
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
178
SELECT * FROM t1;
 
179
a       b
 
180
1       Original from partition p0
 
181
11      Original from partition p1
 
182
12      Original from partition p1
 
183
13      Original from partition p1
 
184
14      Original from partition p1
 
185
2       Original from partition p0
 
186
3       Original from partition p0
 
187
4       Original from partition p0
 
188
ALTER TABLE t1 ADD PARTITION
 
189
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
190
ERROR HY000: Lost connection to MySQL server during query
 
191
# State after crash (before recovery)
 
192
#sql-t1.frm
 
193
#sql-t1.par
 
194
t1#P#p0.MYD
 
195
t1#P#p0.MYI
 
196
t1#P#p10.MYD
 
197
t1#P#p10.MYI
 
198
t1.frm
 
199
t1.par
 
200
# State after crash recovery
 
201
t1#P#p0.MYD
 
202
t1#P#p0.MYI
 
203
t1#P#p10.MYD
 
204
t1#P#p10.MYI
 
205
t1.frm
 
206
t1.par
 
207
SHOW CREATE TABLE t1;
 
208
Table   Create Table
 
209
t1      CREATE TABLE `t1` (
 
210
  `a` int(11) DEFAULT NULL,
 
211
  `b` varchar(64) DEFAULT NULL
 
212
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
213
/*!50100 PARTITION BY LIST (a)
 
214
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
215
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
216
SELECT * FROM t1;
 
217
a       b
 
218
1       Original from partition p0
 
219
11      Original from partition p1
 
220
12      Original from partition p1
 
221
13      Original from partition p1
 
222
14      Original from partition p1
 
223
2       Original from partition p0
 
224
3       Original from partition p0
 
225
4       Original from partition p0
 
226
DROP TABLE t1;
 
227
SET SESSION debug="-d,crash_add_partition_3";
 
228
SET SESSION debug="+d,crash_add_partition_4";
 
229
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
230
ENGINE = 'MyISAM'
 
231
PARTITION BY LIST (a)
 
232
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
233
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
234
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
235
# State before crash
 
236
t1#P#p0.MYD
 
237
t1#P#p0.MYI
 
238
t1#P#p10.MYD
 
239
t1#P#p10.MYI
 
240
t1.frm
 
241
t1.par
 
242
SHOW CREATE TABLE t1;
 
243
Table   Create Table
 
244
t1      CREATE TABLE `t1` (
 
245
  `a` int(11) DEFAULT NULL,
 
246
  `b` varchar(64) DEFAULT NULL
 
247
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
248
/*!50100 PARTITION BY LIST (a)
 
249
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
250
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
251
SELECT * FROM t1;
 
252
a       b
 
253
1       Original from partition p0
 
254
11      Original from partition p1
 
255
12      Original from partition p1
 
256
13      Original from partition p1
 
257
14      Original from partition p1
 
258
2       Original from partition p0
 
259
3       Original from partition p0
 
260
4       Original from partition p0
 
261
ALTER TABLE t1 ADD PARTITION
 
262
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
263
ERROR HY000: Lost connection to MySQL server during query
 
264
# State after crash (before recovery)
 
265
#sql-t1.frm
 
266
#sql-t1.par
 
267
t1#P#p0.MYD
 
268
t1#P#p0.MYI
 
269
t1#P#p10.MYD
 
270
t1#P#p10.MYI
 
271
t1.frm
 
272
t1.par
 
273
# State after crash recovery
 
274
t1#P#p0.MYD
 
275
t1#P#p0.MYI
 
276
t1#P#p10.MYD
 
277
t1#P#p10.MYI
 
278
t1.frm
 
279
t1.par
 
280
SHOW CREATE TABLE t1;
 
281
Table   Create Table
 
282
t1      CREATE TABLE `t1` (
 
283
  `a` int(11) DEFAULT NULL,
 
284
  `b` varchar(64) DEFAULT NULL
 
285
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
286
/*!50100 PARTITION BY LIST (a)
 
287
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
288
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
289
SELECT * FROM t1;
 
290
a       b
 
291
1       Original from partition p0
 
292
11      Original from partition p1
 
293
12      Original from partition p1
 
294
13      Original from partition p1
 
295
14      Original from partition p1
 
296
2       Original from partition p0
 
297
3       Original from partition p0
 
298
4       Original from partition p0
 
299
DROP TABLE t1;
 
300
SET SESSION debug="-d,crash_add_partition_4";
 
301
SET SESSION debug="+d,crash_add_partition_5";
 
302
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
303
ENGINE = 'MyISAM'
 
304
PARTITION BY LIST (a)
 
305
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
306
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
307
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
308
# State before crash
 
309
t1#P#p0.MYD
 
310
t1#P#p0.MYI
 
311
t1#P#p10.MYD
 
312
t1#P#p10.MYI
 
313
t1.frm
 
314
t1.par
 
315
SHOW CREATE TABLE t1;
 
316
Table   Create Table
 
317
t1      CREATE TABLE `t1` (
 
318
  `a` int(11) DEFAULT NULL,
 
319
  `b` varchar(64) DEFAULT NULL
 
320
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
321
/*!50100 PARTITION BY LIST (a)
 
322
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
323
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
324
SELECT * FROM t1;
 
325
a       b
 
326
1       Original from partition p0
 
327
11      Original from partition p1
 
328
12      Original from partition p1
 
329
13      Original from partition p1
 
330
14      Original from partition p1
 
331
2       Original from partition p0
 
332
3       Original from partition p0
 
333
4       Original from partition p0
 
334
ALTER TABLE t1 ADD PARTITION
 
335
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
336
ERROR HY000: Lost connection to MySQL server during query
 
337
# State after crash (before recovery)
 
338
#sql-t1.frm
 
339
#sql-t1.par
 
340
t1#P#p0.MYD
 
341
t1#P#p0.MYI
 
342
t1#P#p10.MYD
 
343
t1#P#p10.MYI
 
344
t1#P#p20.MYD
 
345
t1#P#p20.MYI
 
346
t1.frm
 
347
t1.par
 
348
# State after crash recovery
 
349
t1#P#p0.MYD
 
350
t1#P#p0.MYI
 
351
t1#P#p10.MYD
 
352
t1#P#p10.MYI
 
353
t1.frm
 
354
t1.par
 
355
SHOW CREATE TABLE t1;
 
356
Table   Create Table
 
357
t1      CREATE TABLE `t1` (
 
358
  `a` int(11) DEFAULT NULL,
 
359
  `b` varchar(64) DEFAULT NULL
 
360
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
361
/*!50100 PARTITION BY LIST (a)
 
362
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
363
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
364
SELECT * FROM t1;
 
365
a       b
 
366
1       Original from partition p0
 
367
11      Original from partition p1
 
368
12      Original from partition p1
 
369
13      Original from partition p1
 
370
14      Original from partition p1
 
371
2       Original from partition p0
 
372
3       Original from partition p0
 
373
4       Original from partition p0
 
374
DROP TABLE t1;
 
375
SET SESSION debug="-d,crash_add_partition_5";
 
376
SET SESSION debug="+d,crash_add_partition_6";
 
377
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
378
ENGINE = 'MyISAM'
 
379
PARTITION BY LIST (a)
 
380
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
381
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
382
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
383
# State before crash
 
384
t1#P#p0.MYD
 
385
t1#P#p0.MYI
 
386
t1#P#p10.MYD
 
387
t1#P#p10.MYI
 
388
t1.frm
 
389
t1.par
 
390
SHOW CREATE TABLE t1;
 
391
Table   Create Table
 
392
t1      CREATE TABLE `t1` (
 
393
  `a` int(11) DEFAULT NULL,
 
394
  `b` varchar(64) DEFAULT NULL
 
395
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
396
/*!50100 PARTITION BY LIST (a)
 
397
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
398
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
399
SELECT * FROM t1;
 
400
a       b
 
401
1       Original from partition p0
 
402
11      Original from partition p1
 
403
12      Original from partition p1
 
404
13      Original from partition p1
 
405
14      Original from partition p1
 
406
2       Original from partition p0
 
407
3       Original from partition p0
 
408
4       Original from partition p0
 
409
ALTER TABLE t1 ADD PARTITION
 
410
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
411
ERROR HY000: Lost connection to MySQL server during query
 
412
# State after crash (before recovery)
 
413
#sql-t1.frm
 
414
#sql-t1.par
 
415
t1#P#p0.MYD
 
416
t1#P#p0.MYI
 
417
t1#P#p10.MYD
 
418
t1#P#p10.MYI
 
419
t1#P#p20.MYD
 
420
t1#P#p20.MYI
 
421
t1.frm
 
422
t1.par
 
423
# State after crash recovery
 
424
t1#P#p0.MYD
 
425
t1#P#p0.MYI
 
426
t1#P#p10.MYD
 
427
t1#P#p10.MYI
 
428
t1.frm
 
429
t1.par
 
430
SHOW CREATE TABLE t1;
 
431
Table   Create Table
 
432
t1      CREATE TABLE `t1` (
 
433
  `a` int(11) DEFAULT NULL,
 
434
  `b` varchar(64) DEFAULT NULL
 
435
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
436
/*!50100 PARTITION BY LIST (a)
 
437
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
438
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
439
SELECT * FROM t1;
 
440
a       b
 
441
1       Original from partition p0
 
442
11      Original from partition p1
 
443
12      Original from partition p1
 
444
13      Original from partition p1
 
445
14      Original from partition p1
 
446
2       Original from partition p0
 
447
3       Original from partition p0
 
448
4       Original from partition p0
 
449
DROP TABLE t1;
 
450
SET SESSION debug="-d,crash_add_partition_6";
 
451
SET SESSION debug="+d,crash_add_partition_7";
 
452
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
453
ENGINE = 'MyISAM'
 
454
PARTITION BY LIST (a)
 
455
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
456
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
457
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
458
# State before crash
 
459
t1#P#p0.MYD
 
460
t1#P#p0.MYI
 
461
t1#P#p10.MYD
 
462
t1#P#p10.MYI
 
463
t1.frm
 
464
t1.par
 
465
SHOW CREATE TABLE t1;
 
466
Table   Create Table
 
467
t1      CREATE TABLE `t1` (
 
468
  `a` int(11) DEFAULT NULL,
 
469
  `b` varchar(64) DEFAULT NULL
 
470
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
471
/*!50100 PARTITION BY LIST (a)
 
472
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
473
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
474
SELECT * FROM t1;
 
475
a       b
 
476
1       Original from partition p0
 
477
11      Original from partition p1
 
478
12      Original from partition p1
 
479
13      Original from partition p1
 
480
14      Original from partition p1
 
481
2       Original from partition p0
 
482
3       Original from partition p0
 
483
4       Original from partition p0
 
484
ALTER TABLE t1 ADD PARTITION
 
485
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
486
ERROR HY000: Lost connection to MySQL server during query
 
487
# State after crash (before recovery)
 
488
#sql-t1.frm
 
489
#sql-t1.par
 
490
t1#P#p0.MYD
 
491
t1#P#p0.MYI
 
492
t1#P#p10.MYD
 
493
t1#P#p10.MYI
 
494
t1#P#p20.MYD
 
495
t1#P#p20.MYI
 
496
t1.frm
 
497
t1.par
 
498
# State after crash recovery
 
499
t1#P#p0.MYD
 
500
t1#P#p0.MYI
 
501
t1#P#p10.MYD
 
502
t1#P#p10.MYI
 
503
t1.frm
 
504
t1.par
 
505
SHOW CREATE TABLE t1;
 
506
Table   Create Table
 
507
t1      CREATE TABLE `t1` (
 
508
  `a` int(11) DEFAULT NULL,
 
509
  `b` varchar(64) DEFAULT NULL
 
510
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
511
/*!50100 PARTITION BY LIST (a)
 
512
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
513
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
514
SELECT * FROM t1;
 
515
a       b
 
516
1       Original from partition p0
 
517
11      Original from partition p1
 
518
12      Original from partition p1
 
519
13      Original from partition p1
 
520
14      Original from partition p1
 
521
2       Original from partition p0
 
522
3       Original from partition p0
 
523
4       Original from partition p0
 
524
DROP TABLE t1;
 
525
SET SESSION debug="-d,crash_add_partition_7";
 
526
SET SESSION debug="+d,crash_add_partition_8";
 
527
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
528
ENGINE = 'MyISAM'
 
529
PARTITION BY LIST (a)
 
530
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
531
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
532
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
533
# State before crash
 
534
t1#P#p0.MYD
 
535
t1#P#p0.MYI
 
536
t1#P#p10.MYD
 
537
t1#P#p10.MYI
 
538
t1.frm
 
539
t1.par
 
540
SHOW CREATE TABLE t1;
 
541
Table   Create Table
 
542
t1      CREATE TABLE `t1` (
 
543
  `a` int(11) DEFAULT NULL,
 
544
  `b` varchar(64) DEFAULT NULL
 
545
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
546
/*!50100 PARTITION BY LIST (a)
 
547
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
548
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
549
SELECT * FROM t1;
 
550
a       b
 
551
1       Original from partition p0
 
552
11      Original from partition p1
 
553
12      Original from partition p1
 
554
13      Original from partition p1
 
555
14      Original from partition p1
 
556
2       Original from partition p0
 
557
3       Original from partition p0
 
558
4       Original from partition p0
 
559
ALTER TABLE t1 ADD PARTITION
 
560
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
561
ERROR HY000: Lost connection to MySQL server during query
 
562
# State after crash (before recovery)
 
563
#sql-t1.frm
 
564
#sql-t1.par
 
565
t1#P#p0.MYD
 
566
t1#P#p0.MYI
 
567
t1#P#p10.MYD
 
568
t1#P#p10.MYI
 
569
t1#P#p20.MYD
 
570
t1#P#p20.MYI
 
571
t1.frm
 
572
t1.par
 
573
# State after crash recovery
 
574
t1#P#p0.MYD
 
575
t1#P#p0.MYI
 
576
t1#P#p10.MYD
 
577
t1#P#p10.MYI
 
578
t1#P#p20.MYD
 
579
t1#P#p20.MYI
 
580
t1.frm
 
581
t1.par
 
582
SHOW CREATE TABLE t1;
 
583
Table   Create Table
 
584
t1      CREATE TABLE `t1` (
 
585
  `a` int(11) DEFAULT NULL,
 
586
  `b` varchar(64) DEFAULT NULL
 
587
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
588
/*!50100 PARTITION BY LIST (a)
 
589
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
590
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
591
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
592
SELECT * FROM t1;
 
593
a       b
 
594
1       Original from partition p0
 
595
11      Original from partition p1
 
596
12      Original from partition p1
 
597
13      Original from partition p1
 
598
14      Original from partition p1
 
599
2       Original from partition p0
 
600
3       Original from partition p0
 
601
4       Original from partition p0
 
602
DROP TABLE t1;
 
603
SET SESSION debug="-d,crash_add_partition_8";
 
604
SET SESSION debug="+d,crash_add_partition_9";
 
605
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
606
ENGINE = 'MyISAM'
 
607
PARTITION BY LIST (a)
 
608
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
609
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
610
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
611
# State before crash
 
612
t1#P#p0.MYD
 
613
t1#P#p0.MYI
 
614
t1#P#p10.MYD
 
615
t1#P#p10.MYI
 
616
t1.frm
 
617
t1.par
 
618
SHOW CREATE TABLE t1;
 
619
Table   Create Table
 
620
t1      CREATE TABLE `t1` (
 
621
  `a` int(11) DEFAULT NULL,
 
622
  `b` varchar(64) DEFAULT NULL
 
623
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
624
/*!50100 PARTITION BY LIST (a)
 
625
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
626
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
627
SELECT * FROM t1;
 
628
a       b
 
629
1       Original from partition p0
 
630
11      Original from partition p1
 
631
12      Original from partition p1
 
632
13      Original from partition p1
 
633
14      Original from partition p1
 
634
2       Original from partition p0
 
635
3       Original from partition p0
 
636
4       Original from partition p0
 
637
ALTER TABLE t1 ADD PARTITION
 
638
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
639
ERROR HY000: Lost connection to MySQL server during query
 
640
# State after crash (before recovery)
 
641
t1#P#p0.MYD
 
642
t1#P#p0.MYI
 
643
t1#P#p10.MYD
 
644
t1#P#p10.MYI
 
645
t1#P#p20.MYD
 
646
t1#P#p20.MYI
 
647
t1.frm
 
648
t1.par
 
649
# State after crash recovery
 
650
t1#P#p0.MYD
 
651
t1#P#p0.MYI
 
652
t1#P#p10.MYD
 
653
t1#P#p10.MYI
 
654
t1#P#p20.MYD
 
655
t1#P#p20.MYI
 
656
t1.frm
 
657
t1.par
 
658
SHOW CREATE TABLE t1;
 
659
Table   Create Table
 
660
t1      CREATE TABLE `t1` (
 
661
  `a` int(11) DEFAULT NULL,
 
662
  `b` varchar(64) DEFAULT NULL
 
663
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
664
/*!50100 PARTITION BY LIST (a)
 
665
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
666
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
667
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
668
SELECT * FROM t1;
 
669
a       b
 
670
1       Original from partition p0
 
671
11      Original from partition p1
 
672
12      Original from partition p1
 
673
13      Original from partition p1
 
674
14      Original from partition p1
 
675
2       Original from partition p0
 
676
3       Original from partition p0
 
677
4       Original from partition p0
 
678
DROP TABLE t1;
 
679
SET SESSION debug="-d,crash_add_partition_9";
 
680
SET SESSION debug="+d,crash_add_partition_10";
 
681
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
682
ENGINE = 'MyISAM'
 
683
PARTITION BY LIST (a)
 
684
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
685
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
686
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
687
# State before crash
 
688
t1#P#p0.MYD
 
689
t1#P#p0.MYI
 
690
t1#P#p10.MYD
 
691
t1#P#p10.MYI
 
692
t1.frm
 
693
t1.par
 
694
SHOW CREATE TABLE t1;
 
695
Table   Create Table
 
696
t1      CREATE TABLE `t1` (
 
697
  `a` int(11) DEFAULT NULL,
 
698
  `b` varchar(64) DEFAULT NULL
 
699
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
700
/*!50100 PARTITION BY LIST (a)
 
701
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
702
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
703
SELECT * FROM t1;
 
704
a       b
 
705
1       Original from partition p0
 
706
11      Original from partition p1
 
707
12      Original from partition p1
 
708
13      Original from partition p1
 
709
14      Original from partition p1
 
710
2       Original from partition p0
 
711
3       Original from partition p0
 
712
4       Original from partition p0
 
713
ALTER TABLE t1 ADD PARTITION
 
714
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
715
ERROR HY000: Lost connection to MySQL server during query
 
716
# State after crash (before recovery)
 
717
t1#P#p0.MYD
 
718
t1#P#p0.MYI
 
719
t1#P#p10.MYD
 
720
t1#P#p10.MYI
 
721
t1#P#p20.MYD
 
722
t1#P#p20.MYI
 
723
t1.frm
 
724
t1.par
 
725
# State after crash recovery
 
726
t1#P#p0.MYD
 
727
t1#P#p0.MYI
 
728
t1#P#p10.MYD
 
729
t1#P#p10.MYI
 
730
t1#P#p20.MYD
 
731
t1#P#p20.MYI
 
732
t1.frm
 
733
t1.par
 
734
SHOW CREATE TABLE t1;
 
735
Table   Create Table
 
736
t1      CREATE TABLE `t1` (
 
737
  `a` int(11) DEFAULT NULL,
 
738
  `b` varchar(64) DEFAULT NULL
 
739
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
740
/*!50100 PARTITION BY LIST (a)
 
741
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
742
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
743
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
744
SELECT * FROM t1;
 
745
a       b
 
746
1       Original from partition p0
 
747
11      Original from partition p1
 
748
12      Original from partition p1
 
749
13      Original from partition p1
 
750
14      Original from partition p1
 
751
2       Original from partition p0
 
752
3       Original from partition p0
 
753
4       Original from partition p0
 
754
DROP TABLE t1;
 
755
SET SESSION debug="-d,crash_add_partition_10";
 
756
# Error recovery testing ADD PARTITION
 
757
SET SESSION debug="+d,fail_add_partition_1";
 
758
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
759
ENGINE = 'MyISAM'
 
760
PARTITION BY LIST (a)
 
761
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
762
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
763
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
764
# State before failure
 
765
t1#P#p0.MYD
 
766
t1#P#p0.MYI
 
767
t1#P#p10.MYD
 
768
t1#P#p10.MYI
 
769
t1.frm
 
770
t1.par
 
771
SHOW CREATE TABLE t1;
 
772
Table   Create Table
 
773
t1      CREATE TABLE `t1` (
 
774
  `a` int(11) DEFAULT NULL,
 
775
  `b` varchar(64) DEFAULT NULL
 
776
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
777
/*!50100 PARTITION BY LIST (a)
 
778
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
779
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
780
SELECT * FROM t1;
 
781
a       b
 
782
1       Original from partition p0
 
783
11      Original from partition p1
 
784
12      Original from partition p1
 
785
13      Original from partition p1
 
786
14      Original from partition p1
 
787
2       Original from partition p0
 
788
3       Original from partition p0
 
789
4       Original from partition p0
 
790
ALTER TABLE t1 ADD PARTITION
 
791
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
792
ERROR HY000: Unknown error
 
793
# State after failure
 
794
t1#P#p0.MYD
 
795
t1#P#p0.MYI
 
796
t1#P#p10.MYD
 
797
t1#P#p10.MYI
 
798
t1.frm
 
799
t1.par
 
800
SHOW CREATE TABLE t1;
 
801
Table   Create Table
 
802
t1      CREATE TABLE `t1` (
 
803
  `a` int(11) DEFAULT NULL,
 
804
  `b` varchar(64) DEFAULT NULL
 
805
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
806
/*!50100 PARTITION BY LIST (a)
 
807
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
808
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
809
SELECT * FROM t1;
 
810
a       b
 
811
1       Original from partition p0
 
812
11      Original from partition p1
 
813
12      Original from partition p1
 
814
13      Original from partition p1
 
815
14      Original from partition p1
 
816
2       Original from partition p0
 
817
3       Original from partition p0
 
818
4       Original from partition p0
 
819
DROP TABLE t1;
 
820
# Same test under LOCK TABLE
 
821
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
822
ENGINE = 'MyISAM'
 
823
PARTITION BY LIST (a)
 
824
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
825
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
826
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
827
# State before failure
 
828
t1#P#p0.MYD
 
829
t1#P#p0.MYI
 
830
t1#P#p10.MYD
 
831
t1#P#p10.MYI
 
832
t1.frm
 
833
t1.par
 
834
SHOW CREATE TABLE t1;
 
835
Table   Create Table
 
836
t1      CREATE TABLE `t1` (
 
837
  `a` int(11) DEFAULT NULL,
 
838
  `b` varchar(64) DEFAULT NULL
 
839
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
840
/*!50100 PARTITION BY LIST (a)
 
841
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
842
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
843
SELECT * FROM t1;
 
844
a       b
 
845
1       Original from partition p0
 
846
11      Original from partition p1
 
847
12      Original from partition p1
 
848
13      Original from partition p1
 
849
14      Original from partition p1
 
850
2       Original from partition p0
 
851
3       Original from partition p0
 
852
4       Original from partition p0
 
853
LOCK TABLE t1 WRITE;
 
854
ALTER TABLE t1 ADD PARTITION
 
855
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
856
ERROR HY000: Unknown error
 
857
# State after failure
 
858
t1#P#p0.MYD
 
859
t1#P#p0.MYI
 
860
t1#P#p10.MYD
 
861
t1#P#p10.MYI
 
862
t1.frm
 
863
t1.par
 
864
SHOW CREATE TABLE t1;
 
865
Table   Create Table
 
866
t1      CREATE TABLE `t1` (
 
867
  `a` int(11) DEFAULT NULL,
 
868
  `b` varchar(64) DEFAULT NULL
 
869
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
870
/*!50100 PARTITION BY LIST (a)
 
871
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
872
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
873
SELECT * FROM t1;
 
874
a       b
 
875
1       Original from partition p0
 
876
11      Original from partition p1
 
877
12      Original from partition p1
 
878
13      Original from partition p1
 
879
14      Original from partition p1
 
880
2       Original from partition p0
 
881
3       Original from partition p0
 
882
4       Original from partition p0
 
883
UNLOCK TABLES;
 
884
DROP TABLE t1;
 
885
SET SESSION debug="-d,fail_add_partition_1";
 
886
SET SESSION debug="+d,fail_add_partition_2";
 
887
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
888
ENGINE = 'MyISAM'
 
889
PARTITION BY LIST (a)
 
890
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
891
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
892
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
893
# State before failure
 
894
t1#P#p0.MYD
 
895
t1#P#p0.MYI
 
896
t1#P#p10.MYD
 
897
t1#P#p10.MYI
 
898
t1.frm
 
899
t1.par
 
900
SHOW CREATE TABLE t1;
 
901
Table   Create Table
 
902
t1      CREATE TABLE `t1` (
 
903
  `a` int(11) DEFAULT NULL,
 
904
  `b` varchar(64) DEFAULT NULL
 
905
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
906
/*!50100 PARTITION BY LIST (a)
 
907
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
908
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
909
SELECT * FROM t1;
 
910
a       b
 
911
1       Original from partition p0
 
912
11      Original from partition p1
 
913
12      Original from partition p1
 
914
13      Original from partition p1
 
915
14      Original from partition p1
 
916
2       Original from partition p0
 
917
3       Original from partition p0
 
918
4       Original from partition p0
 
919
ALTER TABLE t1 ADD PARTITION
 
920
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
921
ERROR HY000: Unknown error
 
922
# State after failure
 
923
t1#P#p0.MYD
 
924
t1#P#p0.MYI
 
925
t1#P#p10.MYD
 
926
t1#P#p10.MYI
 
927
t1.frm
 
928
t1.par
 
929
SHOW CREATE TABLE t1;
 
930
Table   Create Table
 
931
t1      CREATE TABLE `t1` (
 
932
  `a` int(11) DEFAULT NULL,
 
933
  `b` varchar(64) DEFAULT NULL
 
934
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
935
/*!50100 PARTITION BY LIST (a)
 
936
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
937
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
938
SELECT * FROM t1;
 
939
a       b
 
940
1       Original from partition p0
 
941
11      Original from partition p1
 
942
12      Original from partition p1
 
943
13      Original from partition p1
 
944
14      Original from partition p1
 
945
2       Original from partition p0
 
946
3       Original from partition p0
 
947
4       Original from partition p0
 
948
DROP TABLE t1;
 
949
# Same test under LOCK TABLE
 
950
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
951
ENGINE = 'MyISAM'
 
952
PARTITION BY LIST (a)
 
953
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
954
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
955
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
956
# State before failure
 
957
t1#P#p0.MYD
 
958
t1#P#p0.MYI
 
959
t1#P#p10.MYD
 
960
t1#P#p10.MYI
 
961
t1.frm
 
962
t1.par
 
963
SHOW CREATE TABLE t1;
 
964
Table   Create Table
 
965
t1      CREATE TABLE `t1` (
 
966
  `a` int(11) DEFAULT NULL,
 
967
  `b` varchar(64) DEFAULT NULL
 
968
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
969
/*!50100 PARTITION BY LIST (a)
 
970
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
971
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
972
SELECT * FROM t1;
 
973
a       b
 
974
1       Original from partition p0
 
975
11      Original from partition p1
 
976
12      Original from partition p1
 
977
13      Original from partition p1
 
978
14      Original from partition p1
 
979
2       Original from partition p0
 
980
3       Original from partition p0
 
981
4       Original from partition p0
 
982
LOCK TABLE t1 WRITE;
 
983
ALTER TABLE t1 ADD PARTITION
 
984
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
985
ERROR HY000: Unknown error
 
986
# State after failure
 
987
t1#P#p0.MYD
 
988
t1#P#p0.MYI
 
989
t1#P#p10.MYD
 
990
t1#P#p10.MYI
 
991
t1.frm
 
992
t1.par
 
993
SHOW CREATE TABLE t1;
 
994
Table   Create Table
 
995
t1      CREATE TABLE `t1` (
 
996
  `a` int(11) DEFAULT NULL,
 
997
  `b` varchar(64) DEFAULT NULL
 
998
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
999
/*!50100 PARTITION BY LIST (a)
 
1000
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1001
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1002
SELECT * FROM t1;
 
1003
a       b
 
1004
1       Original from partition p0
 
1005
11      Original from partition p1
 
1006
12      Original from partition p1
 
1007
13      Original from partition p1
 
1008
14      Original from partition p1
 
1009
2       Original from partition p0
 
1010
3       Original from partition p0
 
1011
4       Original from partition p0
 
1012
UNLOCK TABLES;
 
1013
DROP TABLE t1;
 
1014
SET SESSION debug="-d,fail_add_partition_2";
 
1015
SET SESSION debug="+d,fail_add_partition_3";
 
1016
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
1017
ENGINE = 'MyISAM'
 
1018
PARTITION BY LIST (a)
 
1019
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
1020
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
1021
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
1022
# State before failure
 
1023
t1#P#p0.MYD
 
1024
t1#P#p0.MYI
 
1025
t1#P#p10.MYD
 
1026
t1#P#p10.MYI
 
1027
t1.frm
 
1028
t1.par
 
1029
SHOW CREATE TABLE t1;
 
1030
Table   Create Table
 
1031
t1      CREATE TABLE `t1` (
 
1032
  `a` int(11) DEFAULT NULL,
 
1033
  `b` varchar(64) DEFAULT NULL
 
1034
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1035
/*!50100 PARTITION BY LIST (a)
 
1036
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1037
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1038
SELECT * FROM t1;
 
1039
a       b
 
1040
1       Original from partition p0
 
1041
11      Original from partition p1
 
1042
12      Original from partition p1
 
1043
13      Original from partition p1
 
1044
14      Original from partition p1
 
1045
2       Original from partition p0
 
1046
3       Original from partition p0
 
1047
4       Original from partition p0
 
1048
ALTER TABLE t1 ADD PARTITION
 
1049
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
1050
ERROR HY000: Unknown error
 
1051
# State after failure
 
1052
t1#P#p0.MYD
 
1053
t1#P#p0.MYI
 
1054
t1#P#p10.MYD
 
1055
t1#P#p10.MYI
 
1056
t1.frm
 
1057
t1.par
 
1058
SHOW CREATE TABLE t1;
 
1059
Table   Create Table
 
1060
t1      CREATE TABLE `t1` (
 
1061
  `a` int(11) DEFAULT NULL,
 
1062
  `b` varchar(64) DEFAULT NULL
 
1063
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1064
/*!50100 PARTITION BY LIST (a)
 
1065
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1066
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1067
SELECT * FROM t1;
 
1068
a       b
 
1069
1       Original from partition p0
 
1070
11      Original from partition p1
 
1071
12      Original from partition p1
 
1072
13      Original from partition p1
 
1073
14      Original from partition p1
 
1074
2       Original from partition p0
 
1075
3       Original from partition p0
 
1076
4       Original from partition p0
 
1077
DROP TABLE t1;
 
1078
# Same test under LOCK TABLE
 
1079
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
1080
ENGINE = 'MyISAM'
 
1081
PARTITION BY LIST (a)
 
1082
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
1083
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
1084
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
1085
# State before failure
 
1086
t1#P#p0.MYD
 
1087
t1#P#p0.MYI
 
1088
t1#P#p10.MYD
 
1089
t1#P#p10.MYI
 
1090
t1.frm
 
1091
t1.par
 
1092
SHOW CREATE TABLE t1;
 
1093
Table   Create Table
 
1094
t1      CREATE TABLE `t1` (
 
1095
  `a` int(11) DEFAULT NULL,
 
1096
  `b` varchar(64) DEFAULT NULL
 
1097
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1098
/*!50100 PARTITION BY LIST (a)
 
1099
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1100
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1101
SELECT * FROM t1;
 
1102
a       b
 
1103
1       Original from partition p0
 
1104
11      Original from partition p1
 
1105
12      Original from partition p1
 
1106
13      Original from partition p1
 
1107
14      Original from partition p1
 
1108
2       Original from partition p0
 
1109
3       Original from partition p0
 
1110
4       Original from partition p0
 
1111
LOCK TABLE t1 WRITE;
 
1112
ALTER TABLE t1 ADD PARTITION
 
1113
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
1114
ERROR HY000: Unknown error
 
1115
# State after failure
 
1116
t1#P#p0.MYD
 
1117
t1#P#p0.MYI
 
1118
t1#P#p10.MYD
 
1119
t1#P#p10.MYI
 
1120
t1.frm
 
1121
t1.par
 
1122
SHOW CREATE TABLE t1;
 
1123
Table   Create Table
 
1124
t1      CREATE TABLE `t1` (
 
1125
  `a` int(11) DEFAULT NULL,
 
1126
  `b` varchar(64) DEFAULT NULL
 
1127
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1128
/*!50100 PARTITION BY LIST (a)
 
1129
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1130
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1131
SELECT * FROM t1;
 
1132
a       b
 
1133
1       Original from partition p0
 
1134
11      Original from partition p1
 
1135
12      Original from partition p1
 
1136
13      Original from partition p1
 
1137
14      Original from partition p1
 
1138
2       Original from partition p0
 
1139
3       Original from partition p0
 
1140
4       Original from partition p0
 
1141
UNLOCK TABLES;
 
1142
DROP TABLE t1;
 
1143
SET SESSION debug="-d,fail_add_partition_3";
 
1144
SET SESSION debug="+d,fail_add_partition_4";
 
1145
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
1146
ENGINE = 'MyISAM'
 
1147
PARTITION BY LIST (a)
 
1148
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
1149
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
1150
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
1151
# State before failure
 
1152
t1#P#p0.MYD
 
1153
t1#P#p0.MYI
 
1154
t1#P#p10.MYD
 
1155
t1#P#p10.MYI
 
1156
t1.frm
 
1157
t1.par
 
1158
SHOW CREATE TABLE t1;
 
1159
Table   Create Table
 
1160
t1      CREATE TABLE `t1` (
 
1161
  `a` int(11) DEFAULT NULL,
 
1162
  `b` varchar(64) DEFAULT NULL
 
1163
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1164
/*!50100 PARTITION BY LIST (a)
 
1165
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1166
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1167
SELECT * FROM t1;
 
1168
a       b
 
1169
1       Original from partition p0
 
1170
11      Original from partition p1
 
1171
12      Original from partition p1
 
1172
13      Original from partition p1
 
1173
14      Original from partition p1
 
1174
2       Original from partition p0
 
1175
3       Original from partition p0
 
1176
4       Original from partition p0
 
1177
ALTER TABLE t1 ADD PARTITION
 
1178
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
1179
ERROR HY000: Unknown error
 
1180
# State after failure
 
1181
t1#P#p0.MYD
 
1182
t1#P#p0.MYI
 
1183
t1#P#p10.MYD
 
1184
t1#P#p10.MYI
 
1185
t1.frm
 
1186
t1.par
 
1187
SHOW CREATE TABLE t1;
 
1188
Table   Create Table
 
1189
t1      CREATE TABLE `t1` (
 
1190
  `a` int(11) DEFAULT NULL,
 
1191
  `b` varchar(64) DEFAULT NULL
 
1192
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1193
/*!50100 PARTITION BY LIST (a)
 
1194
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1195
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1196
SELECT * FROM t1;
 
1197
a       b
 
1198
1       Original from partition p0
 
1199
11      Original from partition p1
 
1200
12      Original from partition p1
 
1201
13      Original from partition p1
 
1202
14      Original from partition p1
 
1203
2       Original from partition p0
 
1204
3       Original from partition p0
 
1205
4       Original from partition p0
 
1206
DROP TABLE t1;
 
1207
# Same test under LOCK TABLE
 
1208
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
1209
ENGINE = 'MyISAM'
 
1210
PARTITION BY LIST (a)
 
1211
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
1212
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
1213
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
1214
# State before failure
 
1215
t1#P#p0.MYD
 
1216
t1#P#p0.MYI
 
1217
t1#P#p10.MYD
 
1218
t1#P#p10.MYI
 
1219
t1.frm
 
1220
t1.par
 
1221
SHOW CREATE TABLE t1;
 
1222
Table   Create Table
 
1223
t1      CREATE TABLE `t1` (
 
1224
  `a` int(11) DEFAULT NULL,
 
1225
  `b` varchar(64) DEFAULT NULL
 
1226
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1227
/*!50100 PARTITION BY LIST (a)
 
1228
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1229
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1230
SELECT * FROM t1;
 
1231
a       b
 
1232
1       Original from partition p0
 
1233
11      Original from partition p1
 
1234
12      Original from partition p1
 
1235
13      Original from partition p1
 
1236
14      Original from partition p1
 
1237
2       Original from partition p0
 
1238
3       Original from partition p0
 
1239
4       Original from partition p0
 
1240
LOCK TABLE t1 WRITE;
 
1241
ALTER TABLE t1 ADD PARTITION
 
1242
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
1243
ERROR HY000: Unknown error
 
1244
# State after failure
 
1245
t1#P#p0.MYD
 
1246
t1#P#p0.MYI
 
1247
t1#P#p10.MYD
 
1248
t1#P#p10.MYI
 
1249
t1.frm
 
1250
t1.par
 
1251
SHOW CREATE TABLE t1;
 
1252
Table   Create Table
 
1253
t1      CREATE TABLE `t1` (
 
1254
  `a` int(11) DEFAULT NULL,
 
1255
  `b` varchar(64) DEFAULT NULL
 
1256
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1257
/*!50100 PARTITION BY LIST (a)
 
1258
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1259
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1260
SELECT * FROM t1;
 
1261
a       b
 
1262
1       Original from partition p0
 
1263
11      Original from partition p1
 
1264
12      Original from partition p1
 
1265
13      Original from partition p1
 
1266
14      Original from partition p1
 
1267
2       Original from partition p0
 
1268
3       Original from partition p0
 
1269
4       Original from partition p0
 
1270
UNLOCK TABLES;
 
1271
DROP TABLE t1;
 
1272
SET SESSION debug="-d,fail_add_partition_4";
 
1273
SET SESSION debug="+d,fail_add_partition_5";
 
1274
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
1275
ENGINE = 'MyISAM'
 
1276
PARTITION BY LIST (a)
 
1277
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
1278
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
1279
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
1280
# State before failure
 
1281
t1#P#p0.MYD
 
1282
t1#P#p0.MYI
 
1283
t1#P#p10.MYD
 
1284
t1#P#p10.MYI
 
1285
t1.frm
 
1286
t1.par
 
1287
SHOW CREATE TABLE t1;
 
1288
Table   Create Table
 
1289
t1      CREATE TABLE `t1` (
 
1290
  `a` int(11) DEFAULT NULL,
 
1291
  `b` varchar(64) DEFAULT NULL
 
1292
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1293
/*!50100 PARTITION BY LIST (a)
 
1294
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1295
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1296
SELECT * FROM t1;
 
1297
a       b
 
1298
1       Original from partition p0
 
1299
11      Original from partition p1
 
1300
12      Original from partition p1
 
1301
13      Original from partition p1
 
1302
14      Original from partition p1
 
1303
2       Original from partition p0
 
1304
3       Original from partition p0
 
1305
4       Original from partition p0
 
1306
ALTER TABLE t1 ADD PARTITION
 
1307
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
1308
ERROR HY000: Unknown error
 
1309
# State after failure
 
1310
t1#P#p0.MYD
 
1311
t1#P#p0.MYI
 
1312
t1#P#p10.MYD
 
1313
t1#P#p10.MYI
 
1314
t1.frm
 
1315
t1.par
 
1316
SHOW CREATE TABLE t1;
 
1317
Table   Create Table
 
1318
t1      CREATE TABLE `t1` (
 
1319
  `a` int(11) DEFAULT NULL,
 
1320
  `b` varchar(64) DEFAULT NULL
 
1321
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1322
/*!50100 PARTITION BY LIST (a)
 
1323
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1324
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1325
SELECT * FROM t1;
 
1326
a       b
 
1327
1       Original from partition p0
 
1328
11      Original from partition p1
 
1329
12      Original from partition p1
 
1330
13      Original from partition p1
 
1331
14      Original from partition p1
 
1332
2       Original from partition p0
 
1333
3       Original from partition p0
 
1334
4       Original from partition p0
 
1335
DROP TABLE t1;
 
1336
# Same test under LOCK TABLE
 
1337
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
1338
ENGINE = 'MyISAM'
 
1339
PARTITION BY LIST (a)
 
1340
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
1341
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
1342
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
1343
# State before failure
 
1344
t1#P#p0.MYD
 
1345
t1#P#p0.MYI
 
1346
t1#P#p10.MYD
 
1347
t1#P#p10.MYI
 
1348
t1.frm
 
1349
t1.par
 
1350
SHOW CREATE TABLE t1;
 
1351
Table   Create Table
 
1352
t1      CREATE TABLE `t1` (
 
1353
  `a` int(11) DEFAULT NULL,
 
1354
  `b` varchar(64) DEFAULT NULL
 
1355
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1356
/*!50100 PARTITION BY LIST (a)
 
1357
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1358
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1359
SELECT * FROM t1;
 
1360
a       b
 
1361
1       Original from partition p0
 
1362
11      Original from partition p1
 
1363
12      Original from partition p1
 
1364
13      Original from partition p1
 
1365
14      Original from partition p1
 
1366
2       Original from partition p0
 
1367
3       Original from partition p0
 
1368
4       Original from partition p0
 
1369
LOCK TABLE t1 WRITE;
 
1370
ALTER TABLE t1 ADD PARTITION
 
1371
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
1372
ERROR HY000: Unknown error
 
1373
# State after failure
 
1374
t1#P#p0.MYD
 
1375
t1#P#p0.MYI
 
1376
t1#P#p10.MYD
 
1377
t1#P#p10.MYI
 
1378
t1.frm
 
1379
t1.par
 
1380
SHOW CREATE TABLE t1;
 
1381
Table   Create Table
 
1382
t1      CREATE TABLE `t1` (
 
1383
  `a` int(11) DEFAULT NULL,
 
1384
  `b` varchar(64) DEFAULT NULL
 
1385
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1386
/*!50100 PARTITION BY LIST (a)
 
1387
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1388
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1389
SELECT * FROM t1;
 
1390
a       b
 
1391
1       Original from partition p0
 
1392
11      Original from partition p1
 
1393
12      Original from partition p1
 
1394
13      Original from partition p1
 
1395
14      Original from partition p1
 
1396
2       Original from partition p0
 
1397
3       Original from partition p0
 
1398
4       Original from partition p0
 
1399
UNLOCK TABLES;
 
1400
DROP TABLE t1;
 
1401
SET SESSION debug="-d,fail_add_partition_5";
 
1402
SET SESSION debug="+d,fail_add_partition_6";
 
1403
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
1404
ENGINE = 'MyISAM'
 
1405
PARTITION BY LIST (a)
 
1406
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
1407
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
1408
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
1409
# State before failure
 
1410
t1#P#p0.MYD
 
1411
t1#P#p0.MYI
 
1412
t1#P#p10.MYD
 
1413
t1#P#p10.MYI
 
1414
t1.frm
 
1415
t1.par
 
1416
SHOW CREATE TABLE t1;
 
1417
Table   Create Table
 
1418
t1      CREATE TABLE `t1` (
 
1419
  `a` int(11) DEFAULT NULL,
 
1420
  `b` varchar(64) DEFAULT NULL
 
1421
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1422
/*!50100 PARTITION BY LIST (a)
 
1423
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1424
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1425
SELECT * FROM t1;
 
1426
a       b
 
1427
1       Original from partition p0
 
1428
11      Original from partition p1
 
1429
12      Original from partition p1
 
1430
13      Original from partition p1
 
1431
14      Original from partition p1
 
1432
2       Original from partition p0
 
1433
3       Original from partition p0
 
1434
4       Original from partition p0
 
1435
ALTER TABLE t1 ADD PARTITION
 
1436
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
1437
ERROR HY000: Unknown error
 
1438
# State after failure
 
1439
t1#P#p0.MYD
 
1440
t1#P#p0.MYI
 
1441
t1#P#p10.MYD
 
1442
t1#P#p10.MYI
 
1443
t1.frm
 
1444
t1.par
 
1445
SHOW CREATE TABLE t1;
 
1446
Table   Create Table
 
1447
t1      CREATE TABLE `t1` (
 
1448
  `a` int(11) DEFAULT NULL,
 
1449
  `b` varchar(64) DEFAULT NULL
 
1450
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1451
/*!50100 PARTITION BY LIST (a)
 
1452
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1453
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1454
SELECT * FROM t1;
 
1455
a       b
 
1456
1       Original from partition p0
 
1457
11      Original from partition p1
 
1458
12      Original from partition p1
 
1459
13      Original from partition p1
 
1460
14      Original from partition p1
 
1461
2       Original from partition p0
 
1462
3       Original from partition p0
 
1463
4       Original from partition p0
 
1464
DROP TABLE t1;
 
1465
# Same test under LOCK TABLE
 
1466
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
1467
ENGINE = 'MyISAM'
 
1468
PARTITION BY LIST (a)
 
1469
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
1470
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
1471
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
1472
# State before failure
 
1473
t1#P#p0.MYD
 
1474
t1#P#p0.MYI
 
1475
t1#P#p10.MYD
 
1476
t1#P#p10.MYI
 
1477
t1.frm
 
1478
t1.par
 
1479
SHOW CREATE TABLE t1;
 
1480
Table   Create Table
 
1481
t1      CREATE TABLE `t1` (
 
1482
  `a` int(11) DEFAULT NULL,
 
1483
  `b` varchar(64) DEFAULT NULL
 
1484
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1485
/*!50100 PARTITION BY LIST (a)
 
1486
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1487
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1488
SELECT * FROM t1;
 
1489
a       b
 
1490
1       Original from partition p0
 
1491
11      Original from partition p1
 
1492
12      Original from partition p1
 
1493
13      Original from partition p1
 
1494
14      Original from partition p1
 
1495
2       Original from partition p0
 
1496
3       Original from partition p0
 
1497
4       Original from partition p0
 
1498
LOCK TABLE t1 WRITE;
 
1499
ALTER TABLE t1 ADD PARTITION
 
1500
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
1501
ERROR HY000: Unknown error
 
1502
# State after failure
 
1503
t1#P#p0.MYD
 
1504
t1#P#p0.MYI
 
1505
t1#P#p10.MYD
 
1506
t1#P#p10.MYI
 
1507
t1.frm
 
1508
t1.par
 
1509
SHOW CREATE TABLE t1;
 
1510
Table   Create Table
 
1511
t1      CREATE TABLE `t1` (
 
1512
  `a` int(11) DEFAULT NULL,
 
1513
  `b` varchar(64) DEFAULT NULL
 
1514
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1515
/*!50100 PARTITION BY LIST (a)
 
1516
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1517
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1518
SELECT * FROM t1;
 
1519
a       b
 
1520
1       Original from partition p0
 
1521
11      Original from partition p1
 
1522
12      Original from partition p1
 
1523
13      Original from partition p1
 
1524
14      Original from partition p1
 
1525
2       Original from partition p0
 
1526
3       Original from partition p0
 
1527
4       Original from partition p0
 
1528
UNLOCK TABLES;
 
1529
DROP TABLE t1;
 
1530
SET SESSION debug="-d,fail_add_partition_6";
 
1531
SET SESSION debug="+d,fail_add_partition_7";
 
1532
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
1533
ENGINE = 'MyISAM'
 
1534
PARTITION BY LIST (a)
 
1535
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
1536
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
1537
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
1538
# State before failure
 
1539
t1#P#p0.MYD
 
1540
t1#P#p0.MYI
 
1541
t1#P#p10.MYD
 
1542
t1#P#p10.MYI
 
1543
t1.frm
 
1544
t1.par
 
1545
SHOW CREATE TABLE t1;
 
1546
Table   Create Table
 
1547
t1      CREATE TABLE `t1` (
 
1548
  `a` int(11) DEFAULT NULL,
 
1549
  `b` varchar(64) DEFAULT NULL
 
1550
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1551
/*!50100 PARTITION BY LIST (a)
 
1552
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1553
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1554
SELECT * FROM t1;
 
1555
a       b
 
1556
1       Original from partition p0
 
1557
11      Original from partition p1
 
1558
12      Original from partition p1
 
1559
13      Original from partition p1
 
1560
14      Original from partition p1
 
1561
2       Original from partition p0
 
1562
3       Original from partition p0
 
1563
4       Original from partition p0
 
1564
ALTER TABLE t1 ADD PARTITION
 
1565
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
1566
ERROR HY000: Unknown error
 
1567
# State after failure
 
1568
t1#P#p0.MYD
 
1569
t1#P#p0.MYI
 
1570
t1#P#p10.MYD
 
1571
t1#P#p10.MYI
 
1572
t1.frm
 
1573
t1.par
 
1574
SHOW CREATE TABLE t1;
 
1575
Table   Create Table
 
1576
t1      CREATE TABLE `t1` (
 
1577
  `a` int(11) DEFAULT NULL,
 
1578
  `b` varchar(64) DEFAULT NULL
 
1579
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1580
/*!50100 PARTITION BY LIST (a)
 
1581
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1582
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1583
SELECT * FROM t1;
 
1584
a       b
 
1585
1       Original from partition p0
 
1586
11      Original from partition p1
 
1587
12      Original from partition p1
 
1588
13      Original from partition p1
 
1589
14      Original from partition p1
 
1590
2       Original from partition p0
 
1591
3       Original from partition p0
 
1592
4       Original from partition p0
 
1593
DROP TABLE t1;
 
1594
# Same test under LOCK TABLE
 
1595
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
1596
ENGINE = 'MyISAM'
 
1597
PARTITION BY LIST (a)
 
1598
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
1599
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
1600
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
1601
# State before failure
 
1602
t1#P#p0.MYD
 
1603
t1#P#p0.MYI
 
1604
t1#P#p10.MYD
 
1605
t1#P#p10.MYI
 
1606
t1.frm
 
1607
t1.par
 
1608
SHOW CREATE TABLE t1;
 
1609
Table   Create Table
 
1610
t1      CREATE TABLE `t1` (
 
1611
  `a` int(11) DEFAULT NULL,
 
1612
  `b` varchar(64) DEFAULT NULL
 
1613
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1614
/*!50100 PARTITION BY LIST (a)
 
1615
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1616
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1617
SELECT * FROM t1;
 
1618
a       b
 
1619
1       Original from partition p0
 
1620
11      Original from partition p1
 
1621
12      Original from partition p1
 
1622
13      Original from partition p1
 
1623
14      Original from partition p1
 
1624
2       Original from partition p0
 
1625
3       Original from partition p0
 
1626
4       Original from partition p0
 
1627
LOCK TABLE t1 WRITE;
 
1628
ALTER TABLE t1 ADD PARTITION
 
1629
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
1630
ERROR HY000: Unknown error
 
1631
# State after failure
 
1632
t1#P#p0.MYD
 
1633
t1#P#p0.MYI
 
1634
t1#P#p10.MYD
 
1635
t1#P#p10.MYI
 
1636
t1.frm
 
1637
t1.par
 
1638
SHOW CREATE TABLE t1;
 
1639
Table   Create Table
 
1640
t1      CREATE TABLE `t1` (
 
1641
  `a` int(11) DEFAULT NULL,
 
1642
  `b` varchar(64) DEFAULT NULL
 
1643
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1644
/*!50100 PARTITION BY LIST (a)
 
1645
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1646
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1647
SELECT * FROM t1;
 
1648
a       b
 
1649
1       Original from partition p0
 
1650
11      Original from partition p1
 
1651
12      Original from partition p1
 
1652
13      Original from partition p1
 
1653
14      Original from partition p1
 
1654
2       Original from partition p0
 
1655
3       Original from partition p0
 
1656
4       Original from partition p0
 
1657
UNLOCK TABLES;
 
1658
DROP TABLE t1;
 
1659
SET SESSION debug="-d,fail_add_partition_7";
 
1660
SET SESSION debug="+d,fail_add_partition_8";
 
1661
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
1662
ENGINE = 'MyISAM'
 
1663
PARTITION BY LIST (a)
 
1664
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
1665
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
1666
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
1667
# State before failure
 
1668
t1#P#p0.MYD
 
1669
t1#P#p0.MYI
 
1670
t1#P#p10.MYD
 
1671
t1#P#p10.MYI
 
1672
t1.frm
 
1673
t1.par
 
1674
SHOW CREATE TABLE t1;
 
1675
Table   Create Table
 
1676
t1      CREATE TABLE `t1` (
 
1677
  `a` int(11) DEFAULT NULL,
 
1678
  `b` varchar(64) DEFAULT NULL
 
1679
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1680
/*!50100 PARTITION BY LIST (a)
 
1681
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1682
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1683
SELECT * FROM t1;
 
1684
a       b
 
1685
1       Original from partition p0
 
1686
11      Original from partition p1
 
1687
12      Original from partition p1
 
1688
13      Original from partition p1
 
1689
14      Original from partition p1
 
1690
2       Original from partition p0
 
1691
3       Original from partition p0
 
1692
4       Original from partition p0
 
1693
ALTER TABLE t1 ADD PARTITION
 
1694
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
1695
ERROR HY000: Unknown error
 
1696
# State after failure
 
1697
t1#P#p0.MYD
 
1698
t1#P#p0.MYI
 
1699
t1#P#p10.MYD
 
1700
t1#P#p10.MYI
 
1701
t1#P#p20.MYD
 
1702
t1#P#p20.MYI
 
1703
t1.frm
 
1704
t1.par
 
1705
SHOW CREATE TABLE t1;
 
1706
Table   Create Table
 
1707
t1      CREATE TABLE `t1` (
 
1708
  `a` int(11) DEFAULT NULL,
 
1709
  `b` varchar(64) DEFAULT NULL
 
1710
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1711
/*!50100 PARTITION BY LIST (a)
 
1712
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1713
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
1714
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
1715
SELECT * FROM t1;
 
1716
a       b
 
1717
1       Original from partition p0
 
1718
11      Original from partition p1
 
1719
12      Original from partition p1
 
1720
13      Original from partition p1
 
1721
14      Original from partition p1
 
1722
2       Original from partition p0
 
1723
3       Original from partition p0
 
1724
4       Original from partition p0
 
1725
DROP TABLE t1;
 
1726
# Same test under LOCK TABLE
 
1727
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
1728
ENGINE = 'MyISAM'
 
1729
PARTITION BY LIST (a)
 
1730
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
1731
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
1732
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
1733
# State before failure
 
1734
t1#P#p0.MYD
 
1735
t1#P#p0.MYI
 
1736
t1#P#p10.MYD
 
1737
t1#P#p10.MYI
 
1738
t1.frm
 
1739
t1.par
 
1740
SHOW CREATE TABLE t1;
 
1741
Table   Create Table
 
1742
t1      CREATE TABLE `t1` (
 
1743
  `a` int(11) DEFAULT NULL,
 
1744
  `b` varchar(64) DEFAULT NULL
 
1745
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1746
/*!50100 PARTITION BY LIST (a)
 
1747
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1748
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1749
SELECT * FROM t1;
 
1750
a       b
 
1751
1       Original from partition p0
 
1752
11      Original from partition p1
 
1753
12      Original from partition p1
 
1754
13      Original from partition p1
 
1755
14      Original from partition p1
 
1756
2       Original from partition p0
 
1757
3       Original from partition p0
 
1758
4       Original from partition p0
 
1759
LOCK TABLE t1 WRITE;
 
1760
ALTER TABLE t1 ADD PARTITION
 
1761
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
1762
ERROR HY000: Unknown error
 
1763
# State after failure
 
1764
t1#P#p0.MYD
 
1765
t1#P#p0.MYI
 
1766
t1#P#p10.MYD
 
1767
t1#P#p10.MYI
 
1768
t1#P#p20.MYD
 
1769
t1#P#p20.MYI
 
1770
t1.frm
 
1771
t1.par
 
1772
SHOW CREATE TABLE t1;
 
1773
Table   Create Table
 
1774
t1      CREATE TABLE `t1` (
 
1775
  `a` int(11) DEFAULT NULL,
 
1776
  `b` varchar(64) DEFAULT NULL
 
1777
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1778
/*!50100 PARTITION BY LIST (a)
 
1779
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1780
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
1781
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
1782
SELECT * FROM t1;
 
1783
a       b
 
1784
1       Original from partition p0
 
1785
11      Original from partition p1
 
1786
12      Original from partition p1
 
1787
13      Original from partition p1
 
1788
14      Original from partition p1
 
1789
2       Original from partition p0
 
1790
3       Original from partition p0
 
1791
4       Original from partition p0
 
1792
UNLOCK TABLES;
 
1793
DROP TABLE t1;
 
1794
SET SESSION debug="-d,fail_add_partition_8";
 
1795
SET SESSION debug="+d,fail_add_partition_9";
 
1796
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
1797
ENGINE = 'MyISAM'
 
1798
PARTITION BY LIST (a)
 
1799
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
1800
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
1801
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
1802
# State before failure
 
1803
t1#P#p0.MYD
 
1804
t1#P#p0.MYI
 
1805
t1#P#p10.MYD
 
1806
t1#P#p10.MYI
 
1807
t1.frm
 
1808
t1.par
 
1809
SHOW CREATE TABLE t1;
 
1810
Table   Create Table
 
1811
t1      CREATE TABLE `t1` (
 
1812
  `a` int(11) DEFAULT NULL,
 
1813
  `b` varchar(64) DEFAULT NULL
 
1814
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1815
/*!50100 PARTITION BY LIST (a)
 
1816
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1817
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1818
SELECT * FROM t1;
 
1819
a       b
 
1820
1       Original from partition p0
 
1821
11      Original from partition p1
 
1822
12      Original from partition p1
 
1823
13      Original from partition p1
 
1824
14      Original from partition p1
 
1825
2       Original from partition p0
 
1826
3       Original from partition p0
 
1827
4       Original from partition p0
 
1828
ALTER TABLE t1 ADD PARTITION
 
1829
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
1830
ERROR HY000: Unknown error
 
1831
# State after failure
 
1832
t1#P#p0.MYD
 
1833
t1#P#p0.MYI
 
1834
t1#P#p10.MYD
 
1835
t1#P#p10.MYI
 
1836
t1#P#p20.MYD
 
1837
t1#P#p20.MYI
 
1838
t1.frm
 
1839
t1.par
 
1840
SHOW CREATE TABLE t1;
 
1841
Table   Create Table
 
1842
t1      CREATE TABLE `t1` (
 
1843
  `a` int(11) DEFAULT NULL,
 
1844
  `b` varchar(64) DEFAULT NULL
 
1845
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1846
/*!50100 PARTITION BY LIST (a)
 
1847
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1848
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
1849
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
1850
SELECT * FROM t1;
 
1851
a       b
 
1852
1       Original from partition p0
 
1853
11      Original from partition p1
 
1854
12      Original from partition p1
 
1855
13      Original from partition p1
 
1856
14      Original from partition p1
 
1857
2       Original from partition p0
 
1858
3       Original from partition p0
 
1859
4       Original from partition p0
 
1860
DROP TABLE t1;
 
1861
# Same test under LOCK TABLE
 
1862
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
1863
ENGINE = 'MyISAM'
 
1864
PARTITION BY LIST (a)
 
1865
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
1866
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
1867
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
1868
# State before failure
 
1869
t1#P#p0.MYD
 
1870
t1#P#p0.MYI
 
1871
t1#P#p10.MYD
 
1872
t1#P#p10.MYI
 
1873
t1.frm
 
1874
t1.par
 
1875
SHOW CREATE TABLE t1;
 
1876
Table   Create Table
 
1877
t1      CREATE TABLE `t1` (
 
1878
  `a` int(11) DEFAULT NULL,
 
1879
  `b` varchar(64) DEFAULT NULL
 
1880
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1881
/*!50100 PARTITION BY LIST (a)
 
1882
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1883
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1884
SELECT * FROM t1;
 
1885
a       b
 
1886
1       Original from partition p0
 
1887
11      Original from partition p1
 
1888
12      Original from partition p1
 
1889
13      Original from partition p1
 
1890
14      Original from partition p1
 
1891
2       Original from partition p0
 
1892
3       Original from partition p0
 
1893
4       Original from partition p0
 
1894
LOCK TABLE t1 WRITE;
 
1895
ALTER TABLE t1 ADD PARTITION
 
1896
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
1897
ERROR HY000: Unknown error
 
1898
# State after failure
 
1899
t1#P#p0.MYD
 
1900
t1#P#p0.MYI
 
1901
t1#P#p10.MYD
 
1902
t1#P#p10.MYI
 
1903
t1#P#p20.MYD
 
1904
t1#P#p20.MYI
 
1905
t1.frm
 
1906
t1.par
 
1907
SHOW CREATE TABLE t1;
 
1908
Table   Create Table
 
1909
t1      CREATE TABLE `t1` (
 
1910
  `a` int(11) DEFAULT NULL,
 
1911
  `b` varchar(64) DEFAULT NULL
 
1912
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1913
/*!50100 PARTITION BY LIST (a)
 
1914
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1915
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
1916
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
1917
SELECT * FROM t1;
 
1918
a       b
 
1919
1       Original from partition p0
 
1920
11      Original from partition p1
 
1921
12      Original from partition p1
 
1922
13      Original from partition p1
 
1923
14      Original from partition p1
 
1924
2       Original from partition p0
 
1925
3       Original from partition p0
 
1926
4       Original from partition p0
 
1927
UNLOCK TABLES;
 
1928
DROP TABLE t1;
 
1929
SET SESSION debug="-d,fail_add_partition_9";
 
1930
SET SESSION debug="+d,fail_add_partition_10";
 
1931
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
1932
ENGINE = 'MyISAM'
 
1933
PARTITION BY LIST (a)
 
1934
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
1935
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
1936
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
1937
# State before failure
 
1938
t1#P#p0.MYD
 
1939
t1#P#p0.MYI
 
1940
t1#P#p10.MYD
 
1941
t1#P#p10.MYI
 
1942
t1.frm
 
1943
t1.par
 
1944
SHOW CREATE TABLE t1;
 
1945
Table   Create Table
 
1946
t1      CREATE TABLE `t1` (
 
1947
  `a` int(11) DEFAULT NULL,
 
1948
  `b` varchar(64) DEFAULT NULL
 
1949
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1950
/*!50100 PARTITION BY LIST (a)
 
1951
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1952
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
1953
SELECT * FROM t1;
 
1954
a       b
 
1955
1       Original from partition p0
 
1956
11      Original from partition p1
 
1957
12      Original from partition p1
 
1958
13      Original from partition p1
 
1959
14      Original from partition p1
 
1960
2       Original from partition p0
 
1961
3       Original from partition p0
 
1962
4       Original from partition p0
 
1963
ALTER TABLE t1 ADD PARTITION
 
1964
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
1965
ERROR HY000: Unknown error
 
1966
# State after failure
 
1967
t1#P#p0.MYD
 
1968
t1#P#p0.MYI
 
1969
t1#P#p10.MYD
 
1970
t1#P#p10.MYI
 
1971
t1#P#p20.MYD
 
1972
t1#P#p20.MYI
 
1973
t1.frm
 
1974
t1.par
 
1975
SHOW CREATE TABLE t1;
 
1976
Table   Create Table
 
1977
t1      CREATE TABLE `t1` (
 
1978
  `a` int(11) DEFAULT NULL,
 
1979
  `b` varchar(64) DEFAULT NULL
 
1980
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
1981
/*!50100 PARTITION BY LIST (a)
 
1982
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
1983
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
1984
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
1985
SELECT * FROM t1;
 
1986
a       b
 
1987
1       Original from partition p0
 
1988
11      Original from partition p1
 
1989
12      Original from partition p1
 
1990
13      Original from partition p1
 
1991
14      Original from partition p1
 
1992
2       Original from partition p0
 
1993
3       Original from partition p0
 
1994
4       Original from partition p0
 
1995
DROP TABLE t1;
 
1996
# Same test under LOCK TABLE
 
1997
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
1998
ENGINE = 'MyISAM'
 
1999
PARTITION BY LIST (a)
 
2000
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
2001
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
2002
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
2003
# State before failure
 
2004
t1#P#p0.MYD
 
2005
t1#P#p0.MYI
 
2006
t1#P#p10.MYD
 
2007
t1#P#p10.MYI
 
2008
t1.frm
 
2009
t1.par
 
2010
SHOW CREATE TABLE t1;
 
2011
Table   Create Table
 
2012
t1      CREATE TABLE `t1` (
 
2013
  `a` int(11) DEFAULT NULL,
 
2014
  `b` varchar(64) DEFAULT NULL
 
2015
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2016
/*!50100 PARTITION BY LIST (a)
 
2017
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2018
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2019
SELECT * FROM t1;
 
2020
a       b
 
2021
1       Original from partition p0
 
2022
11      Original from partition p1
 
2023
12      Original from partition p1
 
2024
13      Original from partition p1
 
2025
14      Original from partition p1
 
2026
2       Original from partition p0
 
2027
3       Original from partition p0
 
2028
4       Original from partition p0
 
2029
LOCK TABLE t1 WRITE;
 
2030
ALTER TABLE t1 ADD PARTITION
 
2031
(PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
2032
ERROR HY000: Unknown error
 
2033
# State after failure
 
2034
t1#P#p0.MYD
 
2035
t1#P#p0.MYI
 
2036
t1#P#p10.MYD
 
2037
t1#P#p10.MYI
 
2038
t1#P#p20.MYD
 
2039
t1#P#p20.MYI
 
2040
t1.frm
 
2041
t1.par
 
2042
SHOW CREATE TABLE t1;
 
2043
Table   Create Table
 
2044
t1      CREATE TABLE `t1` (
 
2045
  `a` int(11) DEFAULT NULL,
 
2046
  `b` varchar(64) DEFAULT NULL
 
2047
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2048
/*!50100 PARTITION BY LIST (a)
 
2049
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2050
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
2051
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
2052
SELECT * FROM t1;
 
2053
a       b
 
2054
1       Original from partition p0
 
2055
11      Original from partition p1
 
2056
12      Original from partition p1
 
2057
13      Original from partition p1
 
2058
14      Original from partition p1
 
2059
2       Original from partition p0
 
2060
3       Original from partition p0
 
2061
4       Original from partition p0
 
2062
UNLOCK TABLES;
 
2063
DROP TABLE t1;
 
2064
SET SESSION debug="-d,fail_add_partition_10";
 
2065
# Test DROP PARTITION
 
2066
SET SESSION debug="+d,crash_drop_partition_1";
 
2067
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
2068
ENGINE = 'MyISAM'
 
2069
PARTITION BY LIST (a)
 
2070
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
2071
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
2072
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
2073
# State before crash
 
2074
t1#P#p0.MYD
 
2075
t1#P#p0.MYI
 
2076
t1#P#p10.MYD
 
2077
t1#P#p10.MYI
 
2078
t1.frm
 
2079
t1.par
 
2080
SHOW CREATE TABLE t1;
 
2081
Table   Create Table
 
2082
t1      CREATE TABLE `t1` (
 
2083
  `a` int(11) DEFAULT NULL,
 
2084
  `b` varchar(64) DEFAULT NULL
 
2085
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2086
/*!50100 PARTITION BY LIST (a)
 
2087
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2088
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2089
SELECT * FROM t1;
 
2090
a       b
 
2091
1       Original from partition p0
 
2092
11      Original from partition p1
 
2093
12      Original from partition p1
 
2094
13      Original from partition p1
 
2095
14      Original from partition p1
 
2096
2       Original from partition p0
 
2097
3       Original from partition p0
 
2098
4       Original from partition p0
 
2099
ALTER TABLE t1 DROP PARTITION p10;
 
2100
ERROR HY000: Lost connection to MySQL server during query
 
2101
# State after crash (before recovery)
 
2102
t1#P#p0.MYD
 
2103
t1#P#p0.MYI
 
2104
t1#P#p10.MYD
 
2105
t1#P#p10.MYI
 
2106
t1.frm
 
2107
t1.par
 
2108
# State after crash recovery
 
2109
t1#P#p0.MYD
 
2110
t1#P#p0.MYI
 
2111
t1#P#p10.MYD
 
2112
t1#P#p10.MYI
 
2113
t1.frm
 
2114
t1.par
 
2115
SHOW CREATE TABLE t1;
 
2116
Table   Create Table
 
2117
t1      CREATE TABLE `t1` (
 
2118
  `a` int(11) DEFAULT NULL,
 
2119
  `b` varchar(64) DEFAULT NULL
 
2120
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2121
/*!50100 PARTITION BY LIST (a)
 
2122
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2123
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2124
SELECT * FROM t1;
 
2125
a       b
 
2126
1       Original from partition p0
 
2127
11      Original from partition p1
 
2128
12      Original from partition p1
 
2129
13      Original from partition p1
 
2130
14      Original from partition p1
 
2131
2       Original from partition p0
 
2132
3       Original from partition p0
 
2133
4       Original from partition p0
 
2134
DROP TABLE t1;
 
2135
SET SESSION debug="-d,crash_drop_partition_1";
 
2136
SET SESSION debug="+d,crash_drop_partition_2";
 
2137
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
2138
ENGINE = 'MyISAM'
 
2139
PARTITION BY LIST (a)
 
2140
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
2141
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
2142
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
2143
# State before crash
 
2144
t1#P#p0.MYD
 
2145
t1#P#p0.MYI
 
2146
t1#P#p10.MYD
 
2147
t1#P#p10.MYI
 
2148
t1.frm
 
2149
t1.par
 
2150
SHOW CREATE TABLE t1;
 
2151
Table   Create Table
 
2152
t1      CREATE TABLE `t1` (
 
2153
  `a` int(11) DEFAULT NULL,
 
2154
  `b` varchar(64) DEFAULT NULL
 
2155
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2156
/*!50100 PARTITION BY LIST (a)
 
2157
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2158
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2159
SELECT * FROM t1;
 
2160
a       b
 
2161
1       Original from partition p0
 
2162
11      Original from partition p1
 
2163
12      Original from partition p1
 
2164
13      Original from partition p1
 
2165
14      Original from partition p1
 
2166
2       Original from partition p0
 
2167
3       Original from partition p0
 
2168
4       Original from partition p0
 
2169
ALTER TABLE t1 DROP PARTITION p10;
 
2170
ERROR HY000: Lost connection to MySQL server during query
 
2171
# State after crash (before recovery)
 
2172
#sql-t1.frm
 
2173
#sql-t1.par
 
2174
t1#P#p0.MYD
 
2175
t1#P#p0.MYI
 
2176
t1#P#p10.MYD
 
2177
t1#P#p10.MYI
 
2178
t1.frm
 
2179
t1.par
 
2180
# State after crash recovery
 
2181
t1#P#p0.MYD
 
2182
t1#P#p0.MYI
 
2183
t1#P#p10.MYD
 
2184
t1#P#p10.MYI
 
2185
t1.frm
 
2186
t1.par
 
2187
SHOW CREATE TABLE t1;
 
2188
Table   Create Table
 
2189
t1      CREATE TABLE `t1` (
 
2190
  `a` int(11) DEFAULT NULL,
 
2191
  `b` varchar(64) DEFAULT NULL
 
2192
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2193
/*!50100 PARTITION BY LIST (a)
 
2194
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2195
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2196
SELECT * FROM t1;
 
2197
a       b
 
2198
1       Original from partition p0
 
2199
11      Original from partition p1
 
2200
12      Original from partition p1
 
2201
13      Original from partition p1
 
2202
14      Original from partition p1
 
2203
2       Original from partition p0
 
2204
3       Original from partition p0
 
2205
4       Original from partition p0
 
2206
DROP TABLE t1;
 
2207
SET SESSION debug="-d,crash_drop_partition_2";
 
2208
SET SESSION debug="+d,crash_drop_partition_3";
 
2209
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
2210
ENGINE = 'MyISAM'
 
2211
PARTITION BY LIST (a)
 
2212
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
2213
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
2214
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
2215
# State before crash
 
2216
t1#P#p0.MYD
 
2217
t1#P#p0.MYI
 
2218
t1#P#p10.MYD
 
2219
t1#P#p10.MYI
 
2220
t1.frm
 
2221
t1.par
 
2222
SHOW CREATE TABLE t1;
 
2223
Table   Create Table
 
2224
t1      CREATE TABLE `t1` (
 
2225
  `a` int(11) DEFAULT NULL,
 
2226
  `b` varchar(64) DEFAULT NULL
 
2227
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2228
/*!50100 PARTITION BY LIST (a)
 
2229
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2230
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2231
SELECT * FROM t1;
 
2232
a       b
 
2233
1       Original from partition p0
 
2234
11      Original from partition p1
 
2235
12      Original from partition p1
 
2236
13      Original from partition p1
 
2237
14      Original from partition p1
 
2238
2       Original from partition p0
 
2239
3       Original from partition p0
 
2240
4       Original from partition p0
 
2241
ALTER TABLE t1 DROP PARTITION p10;
 
2242
ERROR HY000: Lost connection to MySQL server during query
 
2243
# State after crash (before recovery)
 
2244
#sql-t1.frm
 
2245
#sql-t1.par
 
2246
t1#P#p0.MYD
 
2247
t1#P#p0.MYI
 
2248
t1#P#p10.MYD
 
2249
t1#P#p10.MYI
 
2250
t1.frm
 
2251
t1.par
 
2252
# State after crash recovery
 
2253
t1#P#p0.MYD
 
2254
t1#P#p0.MYI
 
2255
t1#P#p10.MYD
 
2256
t1#P#p10.MYI
 
2257
t1.frm
 
2258
t1.par
 
2259
SHOW CREATE TABLE t1;
 
2260
Table   Create Table
 
2261
t1      CREATE TABLE `t1` (
 
2262
  `a` int(11) DEFAULT NULL,
 
2263
  `b` varchar(64) DEFAULT NULL
 
2264
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2265
/*!50100 PARTITION BY LIST (a)
 
2266
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2267
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2268
SELECT * FROM t1;
 
2269
a       b
 
2270
1       Original from partition p0
 
2271
11      Original from partition p1
 
2272
12      Original from partition p1
 
2273
13      Original from partition p1
 
2274
14      Original from partition p1
 
2275
2       Original from partition p0
 
2276
3       Original from partition p0
 
2277
4       Original from partition p0
 
2278
DROP TABLE t1;
 
2279
SET SESSION debug="-d,crash_drop_partition_3";
 
2280
SET SESSION debug="+d,crash_drop_partition_4";
 
2281
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
2282
ENGINE = 'MyISAM'
 
2283
PARTITION BY LIST (a)
 
2284
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
2285
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
2286
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
2287
# State before crash
 
2288
t1#P#p0.MYD
 
2289
t1#P#p0.MYI
 
2290
t1#P#p10.MYD
 
2291
t1#P#p10.MYI
 
2292
t1.frm
 
2293
t1.par
 
2294
SHOW CREATE TABLE t1;
 
2295
Table   Create Table
 
2296
t1      CREATE TABLE `t1` (
 
2297
  `a` int(11) DEFAULT NULL,
 
2298
  `b` varchar(64) DEFAULT NULL
 
2299
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2300
/*!50100 PARTITION BY LIST (a)
 
2301
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2302
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2303
SELECT * FROM t1;
 
2304
a       b
 
2305
1       Original from partition p0
 
2306
11      Original from partition p1
 
2307
12      Original from partition p1
 
2308
13      Original from partition p1
 
2309
14      Original from partition p1
 
2310
2       Original from partition p0
 
2311
3       Original from partition p0
 
2312
4       Original from partition p0
 
2313
ALTER TABLE t1 DROP PARTITION p10;
 
2314
ERROR HY000: Lost connection to MySQL server during query
 
2315
# State after crash (before recovery)
 
2316
#sql-t1.frm
 
2317
#sql-t1.par
 
2318
t1#P#p0.MYD
 
2319
t1#P#p0.MYI
 
2320
t1#P#p10.MYD
 
2321
t1#P#p10.MYI
 
2322
t1.frm
 
2323
t1.par
 
2324
# State after crash recovery
 
2325
t1#P#p0.MYD
 
2326
t1#P#p0.MYI
 
2327
t1.frm
 
2328
t1.par
 
2329
SHOW CREATE TABLE t1;
 
2330
Table   Create Table
 
2331
t1      CREATE TABLE `t1` (
 
2332
  `a` int(11) DEFAULT NULL,
 
2333
  `b` varchar(64) DEFAULT NULL
 
2334
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2335
/*!50100 PARTITION BY LIST (a)
 
2336
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
2337
SELECT * FROM t1;
 
2338
a       b
 
2339
1       Original from partition p0
 
2340
2       Original from partition p0
 
2341
3       Original from partition p0
 
2342
4       Original from partition p0
 
2343
DROP TABLE t1;
 
2344
SET SESSION debug="-d,crash_drop_partition_4";
 
2345
SET SESSION debug="+d,crash_drop_partition_5";
 
2346
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
2347
ENGINE = 'MyISAM'
 
2348
PARTITION BY LIST (a)
 
2349
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
2350
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
2351
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
2352
# State before crash
 
2353
t1#P#p0.MYD
 
2354
t1#P#p0.MYI
 
2355
t1#P#p10.MYD
 
2356
t1#P#p10.MYI
 
2357
t1.frm
 
2358
t1.par
 
2359
SHOW CREATE TABLE t1;
 
2360
Table   Create Table
 
2361
t1      CREATE TABLE `t1` (
 
2362
  `a` int(11) DEFAULT NULL,
 
2363
  `b` varchar(64) DEFAULT NULL
 
2364
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2365
/*!50100 PARTITION BY LIST (a)
 
2366
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2367
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2368
SELECT * FROM t1;
 
2369
a       b
 
2370
1       Original from partition p0
 
2371
11      Original from partition p1
 
2372
12      Original from partition p1
 
2373
13      Original from partition p1
 
2374
14      Original from partition p1
 
2375
2       Original from partition p0
 
2376
3       Original from partition p0
 
2377
4       Original from partition p0
 
2378
ALTER TABLE t1 DROP PARTITION p10;
 
2379
ERROR HY000: Lost connection to MySQL server during query
 
2380
# State after crash (before recovery)
 
2381
#sql-t1.frm
 
2382
#sql-t1.par
 
2383
t1#P#p0.MYD
 
2384
t1#P#p0.MYI
 
2385
t1#P#p10.MYD
 
2386
t1#P#p10.MYI
 
2387
t1.frm
 
2388
t1.par
 
2389
# State after crash recovery
 
2390
t1#P#p0.MYD
 
2391
t1#P#p0.MYI
 
2392
t1.frm
 
2393
t1.par
 
2394
SHOW CREATE TABLE t1;
 
2395
Table   Create Table
 
2396
t1      CREATE TABLE `t1` (
 
2397
  `a` int(11) DEFAULT NULL,
 
2398
  `b` varchar(64) DEFAULT NULL
 
2399
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2400
/*!50100 PARTITION BY LIST (a)
 
2401
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
2402
SELECT * FROM t1;
 
2403
a       b
 
2404
1       Original from partition p0
 
2405
2       Original from partition p0
 
2406
3       Original from partition p0
 
2407
4       Original from partition p0
 
2408
DROP TABLE t1;
 
2409
SET SESSION debug="-d,crash_drop_partition_5";
 
2410
SET SESSION debug="+d,crash_drop_partition_6";
 
2411
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
2412
ENGINE = 'MyISAM'
 
2413
PARTITION BY LIST (a)
 
2414
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
2415
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
2416
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
2417
# State before crash
 
2418
t1#P#p0.MYD
 
2419
t1#P#p0.MYI
 
2420
t1#P#p10.MYD
 
2421
t1#P#p10.MYI
 
2422
t1.frm
 
2423
t1.par
 
2424
SHOW CREATE TABLE t1;
 
2425
Table   Create Table
 
2426
t1      CREATE TABLE `t1` (
 
2427
  `a` int(11) DEFAULT NULL,
 
2428
  `b` varchar(64) DEFAULT NULL
 
2429
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2430
/*!50100 PARTITION BY LIST (a)
 
2431
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2432
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2433
SELECT * FROM t1;
 
2434
a       b
 
2435
1       Original from partition p0
 
2436
11      Original from partition p1
 
2437
12      Original from partition p1
 
2438
13      Original from partition p1
 
2439
14      Original from partition p1
 
2440
2       Original from partition p0
 
2441
3       Original from partition p0
 
2442
4       Original from partition p0
 
2443
ALTER TABLE t1 DROP PARTITION p10;
 
2444
ERROR HY000: Lost connection to MySQL server during query
 
2445
# State after crash (before recovery)
 
2446
#sql-t1.frm
 
2447
#sql-t1.par
 
2448
t1#P#p0.MYD
 
2449
t1#P#p0.MYI
 
2450
t1#P#p10.MYD
 
2451
t1#P#p10.MYI
 
2452
t1.frm
 
2453
t1.par
 
2454
# State after crash recovery
 
2455
t1#P#p0.MYD
 
2456
t1#P#p0.MYI
 
2457
t1.frm
 
2458
t1.par
 
2459
SHOW CREATE TABLE t1;
 
2460
Table   Create Table
 
2461
t1      CREATE TABLE `t1` (
 
2462
  `a` int(11) DEFAULT NULL,
 
2463
  `b` varchar(64) DEFAULT NULL
 
2464
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2465
/*!50100 PARTITION BY LIST (a)
 
2466
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
2467
SELECT * FROM t1;
 
2468
a       b
 
2469
1       Original from partition p0
 
2470
2       Original from partition p0
 
2471
3       Original from partition p0
 
2472
4       Original from partition p0
 
2473
DROP TABLE t1;
 
2474
SET SESSION debug="-d,crash_drop_partition_6";
 
2475
SET SESSION debug="+d,crash_drop_partition_7";
 
2476
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
2477
ENGINE = 'MyISAM'
 
2478
PARTITION BY LIST (a)
 
2479
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
2480
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
2481
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
2482
# State before crash
 
2483
t1#P#p0.MYD
 
2484
t1#P#p0.MYI
 
2485
t1#P#p10.MYD
 
2486
t1#P#p10.MYI
 
2487
t1.frm
 
2488
t1.par
 
2489
SHOW CREATE TABLE t1;
 
2490
Table   Create Table
 
2491
t1      CREATE TABLE `t1` (
 
2492
  `a` int(11) DEFAULT NULL,
 
2493
  `b` varchar(64) DEFAULT NULL
 
2494
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2495
/*!50100 PARTITION BY LIST (a)
 
2496
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2497
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2498
SELECT * FROM t1;
 
2499
a       b
 
2500
1       Original from partition p0
 
2501
11      Original from partition p1
 
2502
12      Original from partition p1
 
2503
13      Original from partition p1
 
2504
14      Original from partition p1
 
2505
2       Original from partition p0
 
2506
3       Original from partition p0
 
2507
4       Original from partition p0
 
2508
ALTER TABLE t1 DROP PARTITION p10;
 
2509
ERROR HY000: Lost connection to MySQL server during query
 
2510
# State after crash (before recovery)
 
2511
t1#P#p0.MYD
 
2512
t1#P#p0.MYI
 
2513
t1#P#p10.MYD
 
2514
t1#P#p10.MYI
 
2515
t1.frm
 
2516
t1.par
 
2517
# State after crash recovery
 
2518
t1#P#p0.MYD
 
2519
t1#P#p0.MYI
 
2520
t1.frm
 
2521
t1.par
 
2522
SHOW CREATE TABLE t1;
 
2523
Table   Create Table
 
2524
t1      CREATE TABLE `t1` (
 
2525
  `a` int(11) DEFAULT NULL,
 
2526
  `b` varchar(64) DEFAULT NULL
 
2527
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2528
/*!50100 PARTITION BY LIST (a)
 
2529
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
2530
SELECT * FROM t1;
 
2531
a       b
 
2532
1       Original from partition p0
 
2533
2       Original from partition p0
 
2534
3       Original from partition p0
 
2535
4       Original from partition p0
 
2536
DROP TABLE t1;
 
2537
SET SESSION debug="-d,crash_drop_partition_7";
 
2538
SET SESSION debug="+d,crash_drop_partition_8";
 
2539
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
2540
ENGINE = 'MyISAM'
 
2541
PARTITION BY LIST (a)
 
2542
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
2543
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
2544
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
2545
# State before crash
 
2546
t1#P#p0.MYD
 
2547
t1#P#p0.MYI
 
2548
t1#P#p10.MYD
 
2549
t1#P#p10.MYI
 
2550
t1.frm
 
2551
t1.par
 
2552
SHOW CREATE TABLE t1;
 
2553
Table   Create Table
 
2554
t1      CREATE TABLE `t1` (
 
2555
  `a` int(11) DEFAULT NULL,
 
2556
  `b` varchar(64) DEFAULT NULL
 
2557
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2558
/*!50100 PARTITION BY LIST (a)
 
2559
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2560
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2561
SELECT * FROM t1;
 
2562
a       b
 
2563
1       Original from partition p0
 
2564
11      Original from partition p1
 
2565
12      Original from partition p1
 
2566
13      Original from partition p1
 
2567
14      Original from partition p1
 
2568
2       Original from partition p0
 
2569
3       Original from partition p0
 
2570
4       Original from partition p0
 
2571
ALTER TABLE t1 DROP PARTITION p10;
 
2572
ERROR HY000: Lost connection to MySQL server during query
 
2573
# State after crash (before recovery)
 
2574
t1#P#p0.MYD
 
2575
t1#P#p0.MYI
 
2576
t1.frm
 
2577
t1.par
 
2578
# State after crash recovery
 
2579
t1#P#p0.MYD
 
2580
t1#P#p0.MYI
 
2581
t1.frm
 
2582
t1.par
 
2583
SHOW CREATE TABLE t1;
 
2584
Table   Create Table
 
2585
t1      CREATE TABLE `t1` (
 
2586
  `a` int(11) DEFAULT NULL,
 
2587
  `b` varchar(64) DEFAULT NULL
 
2588
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2589
/*!50100 PARTITION BY LIST (a)
 
2590
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
2591
SELECT * FROM t1;
 
2592
a       b
 
2593
1       Original from partition p0
 
2594
2       Original from partition p0
 
2595
3       Original from partition p0
 
2596
4       Original from partition p0
 
2597
DROP TABLE t1;
 
2598
SET SESSION debug="-d,crash_drop_partition_8";
 
2599
SET SESSION debug="+d,crash_drop_partition_9";
 
2600
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
2601
ENGINE = 'MyISAM'
 
2602
PARTITION BY LIST (a)
 
2603
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
2604
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
2605
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
2606
# State before crash
 
2607
t1#P#p0.MYD
 
2608
t1#P#p0.MYI
 
2609
t1#P#p10.MYD
 
2610
t1#P#p10.MYI
 
2611
t1.frm
 
2612
t1.par
 
2613
SHOW CREATE TABLE t1;
 
2614
Table   Create Table
 
2615
t1      CREATE TABLE `t1` (
 
2616
  `a` int(11) DEFAULT NULL,
 
2617
  `b` varchar(64) DEFAULT NULL
 
2618
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2619
/*!50100 PARTITION BY LIST (a)
 
2620
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2621
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2622
SELECT * FROM t1;
 
2623
a       b
 
2624
1       Original from partition p0
 
2625
11      Original from partition p1
 
2626
12      Original from partition p1
 
2627
13      Original from partition p1
 
2628
14      Original from partition p1
 
2629
2       Original from partition p0
 
2630
3       Original from partition p0
 
2631
4       Original from partition p0
 
2632
ALTER TABLE t1 DROP PARTITION p10;
 
2633
ERROR HY000: Lost connection to MySQL server during query
 
2634
# State after crash (before recovery)
 
2635
t1#P#p0.MYD
 
2636
t1#P#p0.MYI
 
2637
t1.frm
 
2638
t1.par
 
2639
# State after crash recovery
 
2640
t1#P#p0.MYD
 
2641
t1#P#p0.MYI
 
2642
t1.frm
 
2643
t1.par
 
2644
SHOW CREATE TABLE t1;
 
2645
Table   Create Table
 
2646
t1      CREATE TABLE `t1` (
 
2647
  `a` int(11) DEFAULT NULL,
 
2648
  `b` varchar(64) DEFAULT NULL
 
2649
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2650
/*!50100 PARTITION BY LIST (a)
 
2651
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
2652
SELECT * FROM t1;
 
2653
a       b
 
2654
1       Original from partition p0
 
2655
2       Original from partition p0
 
2656
3       Original from partition p0
 
2657
4       Original from partition p0
 
2658
DROP TABLE t1;
 
2659
SET SESSION debug="-d,crash_drop_partition_9";
 
2660
# Error recovery DROP PARTITION
 
2661
SET SESSION debug="+d,fail_drop_partition_1";
 
2662
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
2663
ENGINE = 'MyISAM'
 
2664
PARTITION BY LIST (a)
 
2665
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
2666
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
2667
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
2668
# State before failure
 
2669
t1#P#p0.MYD
 
2670
t1#P#p0.MYI
 
2671
t1#P#p10.MYD
 
2672
t1#P#p10.MYI
 
2673
t1.frm
 
2674
t1.par
 
2675
SHOW CREATE TABLE t1;
 
2676
Table   Create Table
 
2677
t1      CREATE TABLE `t1` (
 
2678
  `a` int(11) DEFAULT NULL,
 
2679
  `b` varchar(64) DEFAULT NULL
 
2680
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2681
/*!50100 PARTITION BY LIST (a)
 
2682
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2683
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2684
SELECT * FROM t1;
 
2685
a       b
 
2686
1       Original from partition p0
 
2687
11      Original from partition p1
 
2688
12      Original from partition p1
 
2689
13      Original from partition p1
 
2690
14      Original from partition p1
 
2691
2       Original from partition p0
 
2692
3       Original from partition p0
 
2693
4       Original from partition p0
 
2694
ALTER TABLE t1 DROP PARTITION p10;
 
2695
ERROR HY000: Unknown error
 
2696
# State after failure
 
2697
t1#P#p0.MYD
 
2698
t1#P#p0.MYI
 
2699
t1#P#p10.MYD
 
2700
t1#P#p10.MYI
 
2701
t1.frm
 
2702
t1.par
 
2703
SHOW CREATE TABLE t1;
 
2704
Table   Create Table
 
2705
t1      CREATE TABLE `t1` (
 
2706
  `a` int(11) DEFAULT NULL,
 
2707
  `b` varchar(64) DEFAULT NULL
 
2708
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2709
/*!50100 PARTITION BY LIST (a)
 
2710
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2711
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2712
SELECT * FROM t1;
 
2713
a       b
 
2714
1       Original from partition p0
 
2715
11      Original from partition p1
 
2716
12      Original from partition p1
 
2717
13      Original from partition p1
 
2718
14      Original from partition p1
 
2719
2       Original from partition p0
 
2720
3       Original from partition p0
 
2721
4       Original from partition p0
 
2722
DROP TABLE t1;
 
2723
# Same test under LOCK TABLE
 
2724
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
2725
ENGINE = 'MyISAM'
 
2726
PARTITION BY LIST (a)
 
2727
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
2728
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
2729
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
2730
# State before failure
 
2731
t1#P#p0.MYD
 
2732
t1#P#p0.MYI
 
2733
t1#P#p10.MYD
 
2734
t1#P#p10.MYI
 
2735
t1.frm
 
2736
t1.par
 
2737
SHOW CREATE TABLE t1;
 
2738
Table   Create Table
 
2739
t1      CREATE TABLE `t1` (
 
2740
  `a` int(11) DEFAULT NULL,
 
2741
  `b` varchar(64) DEFAULT NULL
 
2742
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2743
/*!50100 PARTITION BY LIST (a)
 
2744
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2745
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2746
SELECT * FROM t1;
 
2747
a       b
 
2748
1       Original from partition p0
 
2749
11      Original from partition p1
 
2750
12      Original from partition p1
 
2751
13      Original from partition p1
 
2752
14      Original from partition p1
 
2753
2       Original from partition p0
 
2754
3       Original from partition p0
 
2755
4       Original from partition p0
 
2756
LOCK TABLE t1 WRITE;
 
2757
ALTER TABLE t1 DROP PARTITION p10;
 
2758
ERROR HY000: Unknown error
 
2759
# State after failure
 
2760
t1#P#p0.MYD
 
2761
t1#P#p0.MYI
 
2762
t1#P#p10.MYD
 
2763
t1#P#p10.MYI
 
2764
t1.frm
 
2765
t1.par
 
2766
SHOW CREATE TABLE t1;
 
2767
Table   Create Table
 
2768
t1      CREATE TABLE `t1` (
 
2769
  `a` int(11) DEFAULT NULL,
 
2770
  `b` varchar(64) DEFAULT NULL
 
2771
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2772
/*!50100 PARTITION BY LIST (a)
 
2773
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2774
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2775
SELECT * FROM t1;
 
2776
a       b
 
2777
1       Original from partition p0
 
2778
11      Original from partition p1
 
2779
12      Original from partition p1
 
2780
13      Original from partition p1
 
2781
14      Original from partition p1
 
2782
2       Original from partition p0
 
2783
3       Original from partition p0
 
2784
4       Original from partition p0
 
2785
UNLOCK TABLES;
 
2786
DROP TABLE t1;
 
2787
SET SESSION debug="-d,fail_drop_partition_1";
 
2788
SET SESSION debug="+d,fail_drop_partition_2";
 
2789
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
2790
ENGINE = 'MyISAM'
 
2791
PARTITION BY LIST (a)
 
2792
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
2793
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
2794
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
2795
# State before failure
 
2796
t1#P#p0.MYD
 
2797
t1#P#p0.MYI
 
2798
t1#P#p10.MYD
 
2799
t1#P#p10.MYI
 
2800
t1.frm
 
2801
t1.par
 
2802
SHOW CREATE TABLE t1;
 
2803
Table   Create Table
 
2804
t1      CREATE TABLE `t1` (
 
2805
  `a` int(11) DEFAULT NULL,
 
2806
  `b` varchar(64) DEFAULT NULL
 
2807
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2808
/*!50100 PARTITION BY LIST (a)
 
2809
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2810
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2811
SELECT * FROM t1;
 
2812
a       b
 
2813
1       Original from partition p0
 
2814
11      Original from partition p1
 
2815
12      Original from partition p1
 
2816
13      Original from partition p1
 
2817
14      Original from partition p1
 
2818
2       Original from partition p0
 
2819
3       Original from partition p0
 
2820
4       Original from partition p0
 
2821
ALTER TABLE t1 DROP PARTITION p10;
 
2822
ERROR HY000: Unknown error
 
2823
# State after failure
 
2824
t1#P#p0.MYD
 
2825
t1#P#p0.MYI
 
2826
t1#P#p10.MYD
 
2827
t1#P#p10.MYI
 
2828
t1.frm
 
2829
t1.par
 
2830
SHOW CREATE TABLE t1;
 
2831
Table   Create Table
 
2832
t1      CREATE TABLE `t1` (
 
2833
  `a` int(11) DEFAULT NULL,
 
2834
  `b` varchar(64) DEFAULT NULL
 
2835
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2836
/*!50100 PARTITION BY LIST (a)
 
2837
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2838
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2839
SELECT * FROM t1;
 
2840
a       b
 
2841
1       Original from partition p0
 
2842
11      Original from partition p1
 
2843
12      Original from partition p1
 
2844
13      Original from partition p1
 
2845
14      Original from partition p1
 
2846
2       Original from partition p0
 
2847
3       Original from partition p0
 
2848
4       Original from partition p0
 
2849
DROP TABLE t1;
 
2850
# Same test under LOCK TABLE
 
2851
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
2852
ENGINE = 'MyISAM'
 
2853
PARTITION BY LIST (a)
 
2854
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
2855
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
2856
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
2857
# State before failure
 
2858
t1#P#p0.MYD
 
2859
t1#P#p0.MYI
 
2860
t1#P#p10.MYD
 
2861
t1#P#p10.MYI
 
2862
t1.frm
 
2863
t1.par
 
2864
SHOW CREATE TABLE t1;
 
2865
Table   Create Table
 
2866
t1      CREATE TABLE `t1` (
 
2867
  `a` int(11) DEFAULT NULL,
 
2868
  `b` varchar(64) DEFAULT NULL
 
2869
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2870
/*!50100 PARTITION BY LIST (a)
 
2871
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2872
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2873
SELECT * FROM t1;
 
2874
a       b
 
2875
1       Original from partition p0
 
2876
11      Original from partition p1
 
2877
12      Original from partition p1
 
2878
13      Original from partition p1
 
2879
14      Original from partition p1
 
2880
2       Original from partition p0
 
2881
3       Original from partition p0
 
2882
4       Original from partition p0
 
2883
LOCK TABLE t1 WRITE;
 
2884
ALTER TABLE t1 DROP PARTITION p10;
 
2885
ERROR HY000: Unknown error
 
2886
# State after failure
 
2887
t1#P#p0.MYD
 
2888
t1#P#p0.MYI
 
2889
t1#P#p10.MYD
 
2890
t1#P#p10.MYI
 
2891
t1.frm
 
2892
t1.par
 
2893
SHOW CREATE TABLE t1;
 
2894
Table   Create Table
 
2895
t1      CREATE TABLE `t1` (
 
2896
  `a` int(11) DEFAULT NULL,
 
2897
  `b` varchar(64) DEFAULT NULL
 
2898
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2899
/*!50100 PARTITION BY LIST (a)
 
2900
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2901
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2902
SELECT * FROM t1;
 
2903
a       b
 
2904
1       Original from partition p0
 
2905
11      Original from partition p1
 
2906
12      Original from partition p1
 
2907
13      Original from partition p1
 
2908
14      Original from partition p1
 
2909
2       Original from partition p0
 
2910
3       Original from partition p0
 
2911
4       Original from partition p0
 
2912
UNLOCK TABLES;
 
2913
DROP TABLE t1;
 
2914
SET SESSION debug="-d,fail_drop_partition_2";
 
2915
SET SESSION debug="+d,fail_drop_partition_3";
 
2916
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
2917
ENGINE = 'MyISAM'
 
2918
PARTITION BY LIST (a)
 
2919
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
2920
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
2921
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
2922
# State before failure
 
2923
t1#P#p0.MYD
 
2924
t1#P#p0.MYI
 
2925
t1#P#p10.MYD
 
2926
t1#P#p10.MYI
 
2927
t1.frm
 
2928
t1.par
 
2929
SHOW CREATE TABLE t1;
 
2930
Table   Create Table
 
2931
t1      CREATE TABLE `t1` (
 
2932
  `a` int(11) DEFAULT NULL,
 
2933
  `b` varchar(64) DEFAULT NULL
 
2934
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2935
/*!50100 PARTITION BY LIST (a)
 
2936
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2937
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2938
SELECT * FROM t1;
 
2939
a       b
 
2940
1       Original from partition p0
 
2941
11      Original from partition p1
 
2942
12      Original from partition p1
 
2943
13      Original from partition p1
 
2944
14      Original from partition p1
 
2945
2       Original from partition p0
 
2946
3       Original from partition p0
 
2947
4       Original from partition p0
 
2948
ALTER TABLE t1 DROP PARTITION p10;
 
2949
ERROR HY000: Unknown error
 
2950
# State after failure
 
2951
t1#P#p0.MYD
 
2952
t1#P#p0.MYI
 
2953
t1#P#p10.MYD
 
2954
t1#P#p10.MYI
 
2955
t1.frm
 
2956
t1.par
 
2957
SHOW CREATE TABLE t1;
 
2958
Table   Create Table
 
2959
t1      CREATE TABLE `t1` (
 
2960
  `a` int(11) DEFAULT NULL,
 
2961
  `b` varchar(64) DEFAULT NULL
 
2962
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2963
/*!50100 PARTITION BY LIST (a)
 
2964
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2965
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
2966
SELECT * FROM t1;
 
2967
a       b
 
2968
1       Original from partition p0
 
2969
11      Original from partition p1
 
2970
12      Original from partition p1
 
2971
13      Original from partition p1
 
2972
14      Original from partition p1
 
2973
2       Original from partition p0
 
2974
3       Original from partition p0
 
2975
4       Original from partition p0
 
2976
DROP TABLE t1;
 
2977
# Same test under LOCK TABLE
 
2978
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
2979
ENGINE = 'MyISAM'
 
2980
PARTITION BY LIST (a)
 
2981
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
2982
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
2983
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
2984
# State before failure
 
2985
t1#P#p0.MYD
 
2986
t1#P#p0.MYI
 
2987
t1#P#p10.MYD
 
2988
t1#P#p10.MYI
 
2989
t1.frm
 
2990
t1.par
 
2991
SHOW CREATE TABLE t1;
 
2992
Table   Create Table
 
2993
t1      CREATE TABLE `t1` (
 
2994
  `a` int(11) DEFAULT NULL,
 
2995
  `b` varchar(64) DEFAULT NULL
 
2996
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
2997
/*!50100 PARTITION BY LIST (a)
 
2998
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
2999
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3000
SELECT * FROM t1;
 
3001
a       b
 
3002
1       Original from partition p0
 
3003
11      Original from partition p1
 
3004
12      Original from partition p1
 
3005
13      Original from partition p1
 
3006
14      Original from partition p1
 
3007
2       Original from partition p0
 
3008
3       Original from partition p0
 
3009
4       Original from partition p0
 
3010
LOCK TABLE t1 WRITE;
 
3011
ALTER TABLE t1 DROP PARTITION p10;
 
3012
ERROR HY000: Unknown error
 
3013
# State after failure
 
3014
t1#P#p0.MYD
 
3015
t1#P#p0.MYI
 
3016
t1#P#p10.MYD
 
3017
t1#P#p10.MYI
 
3018
t1.frm
 
3019
t1.par
 
3020
SHOW CREATE TABLE t1;
 
3021
Table   Create Table
 
3022
t1      CREATE TABLE `t1` (
 
3023
  `a` int(11) DEFAULT NULL,
 
3024
  `b` varchar(64) DEFAULT NULL
 
3025
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3026
/*!50100 PARTITION BY LIST (a)
 
3027
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3028
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3029
SELECT * FROM t1;
 
3030
a       b
 
3031
1       Original from partition p0
 
3032
11      Original from partition p1
 
3033
12      Original from partition p1
 
3034
13      Original from partition p1
 
3035
14      Original from partition p1
 
3036
2       Original from partition p0
 
3037
3       Original from partition p0
 
3038
4       Original from partition p0
 
3039
UNLOCK TABLES;
 
3040
DROP TABLE t1;
 
3041
SET SESSION debug="-d,fail_drop_partition_3";
 
3042
SET SESSION debug="+d,fail_drop_partition_4";
 
3043
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
3044
ENGINE = 'MyISAM'
 
3045
PARTITION BY LIST (a)
 
3046
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
3047
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
3048
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
3049
# State before failure
 
3050
t1#P#p0.MYD
 
3051
t1#P#p0.MYI
 
3052
t1#P#p10.MYD
 
3053
t1#P#p10.MYI
 
3054
t1.frm
 
3055
t1.par
 
3056
SHOW CREATE TABLE t1;
 
3057
Table   Create Table
 
3058
t1      CREATE TABLE `t1` (
 
3059
  `a` int(11) DEFAULT NULL,
 
3060
  `b` varchar(64) DEFAULT NULL
 
3061
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3062
/*!50100 PARTITION BY LIST (a)
 
3063
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3064
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3065
SELECT * FROM t1;
 
3066
a       b
 
3067
1       Original from partition p0
 
3068
11      Original from partition p1
 
3069
12      Original from partition p1
 
3070
13      Original from partition p1
 
3071
14      Original from partition p1
 
3072
2       Original from partition p0
 
3073
3       Original from partition p0
 
3074
4       Original from partition p0
 
3075
ALTER TABLE t1 DROP PARTITION p10;
 
3076
ERROR HY000: Unknown error
 
3077
# State after failure
 
3078
t1#P#p0.MYD
 
3079
t1#P#p0.MYI
 
3080
t1.frm
 
3081
t1.par
 
3082
SHOW CREATE TABLE t1;
 
3083
Table   Create Table
 
3084
t1      CREATE TABLE `t1` (
 
3085
  `a` int(11) DEFAULT NULL,
 
3086
  `b` varchar(64) DEFAULT NULL
 
3087
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3088
/*!50100 PARTITION BY LIST (a)
 
3089
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
3090
SELECT * FROM t1;
 
3091
a       b
 
3092
1       Original from partition p0
 
3093
2       Original from partition p0
 
3094
3       Original from partition p0
 
3095
4       Original from partition p0
 
3096
DROP TABLE t1;
 
3097
# Same test under LOCK TABLE
 
3098
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
3099
ENGINE = 'MyISAM'
 
3100
PARTITION BY LIST (a)
 
3101
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
3102
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
3103
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
3104
# State before failure
 
3105
t1#P#p0.MYD
 
3106
t1#P#p0.MYI
 
3107
t1#P#p10.MYD
 
3108
t1#P#p10.MYI
 
3109
t1.frm
 
3110
t1.par
 
3111
SHOW CREATE TABLE t1;
 
3112
Table   Create Table
 
3113
t1      CREATE TABLE `t1` (
 
3114
  `a` int(11) DEFAULT NULL,
 
3115
  `b` varchar(64) DEFAULT NULL
 
3116
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3117
/*!50100 PARTITION BY LIST (a)
 
3118
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3119
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3120
SELECT * FROM t1;
 
3121
a       b
 
3122
1       Original from partition p0
 
3123
11      Original from partition p1
 
3124
12      Original from partition p1
 
3125
13      Original from partition p1
 
3126
14      Original from partition p1
 
3127
2       Original from partition p0
 
3128
3       Original from partition p0
 
3129
4       Original from partition p0
 
3130
LOCK TABLE t1 WRITE;
 
3131
ALTER TABLE t1 DROP PARTITION p10;
 
3132
ERROR HY000: Unknown error
 
3133
# State after failure
 
3134
t1#P#p0.MYD
 
3135
t1#P#p0.MYI
 
3136
t1.frm
 
3137
t1.par
 
3138
SHOW CREATE TABLE t1;
 
3139
Table   Create Table
 
3140
t1      CREATE TABLE `t1` (
 
3141
  `a` int(11) DEFAULT NULL,
 
3142
  `b` varchar(64) DEFAULT NULL
 
3143
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3144
/*!50100 PARTITION BY LIST (a)
 
3145
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
3146
SELECT * FROM t1;
 
3147
a       b
 
3148
1       Original from partition p0
 
3149
2       Original from partition p0
 
3150
3       Original from partition p0
 
3151
4       Original from partition p0
 
3152
UNLOCK TABLES;
 
3153
DROP TABLE t1;
 
3154
SET SESSION debug="-d,fail_drop_partition_4";
 
3155
SET SESSION debug="+d,fail_drop_partition_5";
 
3156
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
3157
ENGINE = 'MyISAM'
 
3158
PARTITION BY LIST (a)
 
3159
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
3160
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
3161
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
3162
# State before failure
 
3163
t1#P#p0.MYD
 
3164
t1#P#p0.MYI
 
3165
t1#P#p10.MYD
 
3166
t1#P#p10.MYI
 
3167
t1.frm
 
3168
t1.par
 
3169
SHOW CREATE TABLE t1;
 
3170
Table   Create Table
 
3171
t1      CREATE TABLE `t1` (
 
3172
  `a` int(11) DEFAULT NULL,
 
3173
  `b` varchar(64) DEFAULT NULL
 
3174
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3175
/*!50100 PARTITION BY LIST (a)
 
3176
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3177
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3178
SELECT * FROM t1;
 
3179
a       b
 
3180
1       Original from partition p0
 
3181
11      Original from partition p1
 
3182
12      Original from partition p1
 
3183
13      Original from partition p1
 
3184
14      Original from partition p1
 
3185
2       Original from partition p0
 
3186
3       Original from partition p0
 
3187
4       Original from partition p0
 
3188
ALTER TABLE t1 DROP PARTITION p10;
 
3189
ERROR HY000: Unknown error
 
3190
# State after failure
 
3191
t1#P#p0.MYD
 
3192
t1#P#p0.MYI
 
3193
t1.frm
 
3194
t1.par
 
3195
SHOW CREATE TABLE t1;
 
3196
Table   Create Table
 
3197
t1      CREATE TABLE `t1` (
 
3198
  `a` int(11) DEFAULT NULL,
 
3199
  `b` varchar(64) DEFAULT NULL
 
3200
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3201
/*!50100 PARTITION BY LIST (a)
 
3202
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
3203
SELECT * FROM t1;
 
3204
a       b
 
3205
1       Original from partition p0
 
3206
2       Original from partition p0
 
3207
3       Original from partition p0
 
3208
4       Original from partition p0
 
3209
DROP TABLE t1;
 
3210
# Same test under LOCK TABLE
 
3211
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
3212
ENGINE = 'MyISAM'
 
3213
PARTITION BY LIST (a)
 
3214
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
3215
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
3216
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
3217
# State before failure
 
3218
t1#P#p0.MYD
 
3219
t1#P#p0.MYI
 
3220
t1#P#p10.MYD
 
3221
t1#P#p10.MYI
 
3222
t1.frm
 
3223
t1.par
 
3224
SHOW CREATE TABLE t1;
 
3225
Table   Create Table
 
3226
t1      CREATE TABLE `t1` (
 
3227
  `a` int(11) DEFAULT NULL,
 
3228
  `b` varchar(64) DEFAULT NULL
 
3229
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3230
/*!50100 PARTITION BY LIST (a)
 
3231
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3232
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3233
SELECT * FROM t1;
 
3234
a       b
 
3235
1       Original from partition p0
 
3236
11      Original from partition p1
 
3237
12      Original from partition p1
 
3238
13      Original from partition p1
 
3239
14      Original from partition p1
 
3240
2       Original from partition p0
 
3241
3       Original from partition p0
 
3242
4       Original from partition p0
 
3243
LOCK TABLE t1 WRITE;
 
3244
ALTER TABLE t1 DROP PARTITION p10;
 
3245
ERROR HY000: Unknown error
 
3246
# State after failure
 
3247
t1#P#p0.MYD
 
3248
t1#P#p0.MYI
 
3249
t1.frm
 
3250
t1.par
 
3251
SHOW CREATE TABLE t1;
 
3252
Table   Create Table
 
3253
t1      CREATE TABLE `t1` (
 
3254
  `a` int(11) DEFAULT NULL,
 
3255
  `b` varchar(64) DEFAULT NULL
 
3256
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3257
/*!50100 PARTITION BY LIST (a)
 
3258
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
3259
SELECT * FROM t1;
 
3260
a       b
 
3261
1       Original from partition p0
 
3262
2       Original from partition p0
 
3263
3       Original from partition p0
 
3264
4       Original from partition p0
 
3265
UNLOCK TABLES;
 
3266
DROP TABLE t1;
 
3267
SET SESSION debug="-d,fail_drop_partition_5";
 
3268
SET SESSION debug="+d,fail_drop_partition_6";
 
3269
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
3270
ENGINE = 'MyISAM'
 
3271
PARTITION BY LIST (a)
 
3272
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
3273
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
3274
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
3275
# State before failure
 
3276
t1#P#p0.MYD
 
3277
t1#P#p0.MYI
 
3278
t1#P#p10.MYD
 
3279
t1#P#p10.MYI
 
3280
t1.frm
 
3281
t1.par
 
3282
SHOW CREATE TABLE t1;
 
3283
Table   Create Table
 
3284
t1      CREATE TABLE `t1` (
 
3285
  `a` int(11) DEFAULT NULL,
 
3286
  `b` varchar(64) DEFAULT NULL
 
3287
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3288
/*!50100 PARTITION BY LIST (a)
 
3289
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3290
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3291
SELECT * FROM t1;
 
3292
a       b
 
3293
1       Original from partition p0
 
3294
11      Original from partition p1
 
3295
12      Original from partition p1
 
3296
13      Original from partition p1
 
3297
14      Original from partition p1
 
3298
2       Original from partition p0
 
3299
3       Original from partition p0
 
3300
4       Original from partition p0
 
3301
ALTER TABLE t1 DROP PARTITION p10;
 
3302
ERROR HY000: Unknown error
 
3303
# State after failure
 
3304
t1#P#p0.MYD
 
3305
t1#P#p0.MYI
 
3306
t1.frm
 
3307
t1.par
 
3308
SHOW CREATE TABLE t1;
 
3309
Table   Create Table
 
3310
t1      CREATE TABLE `t1` (
 
3311
  `a` int(11) DEFAULT NULL,
 
3312
  `b` varchar(64) DEFAULT NULL
 
3313
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3314
/*!50100 PARTITION BY LIST (a)
 
3315
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
3316
SELECT * FROM t1;
 
3317
a       b
 
3318
1       Original from partition p0
 
3319
2       Original from partition p0
 
3320
3       Original from partition p0
 
3321
4       Original from partition p0
 
3322
DROP TABLE t1;
 
3323
# Same test under LOCK TABLE
 
3324
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
3325
ENGINE = 'MyISAM'
 
3326
PARTITION BY LIST (a)
 
3327
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
3328
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
3329
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
3330
# State before failure
 
3331
t1#P#p0.MYD
 
3332
t1#P#p0.MYI
 
3333
t1#P#p10.MYD
 
3334
t1#P#p10.MYI
 
3335
t1.frm
 
3336
t1.par
 
3337
SHOW CREATE TABLE t1;
 
3338
Table   Create Table
 
3339
t1      CREATE TABLE `t1` (
 
3340
  `a` int(11) DEFAULT NULL,
 
3341
  `b` varchar(64) DEFAULT NULL
 
3342
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3343
/*!50100 PARTITION BY LIST (a)
 
3344
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3345
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3346
SELECT * FROM t1;
 
3347
a       b
 
3348
1       Original from partition p0
 
3349
11      Original from partition p1
 
3350
12      Original from partition p1
 
3351
13      Original from partition p1
 
3352
14      Original from partition p1
 
3353
2       Original from partition p0
 
3354
3       Original from partition p0
 
3355
4       Original from partition p0
 
3356
LOCK TABLE t1 WRITE;
 
3357
ALTER TABLE t1 DROP PARTITION p10;
 
3358
ERROR HY000: Unknown error
 
3359
# State after failure
 
3360
t1#P#p0.MYD
 
3361
t1#P#p0.MYI
 
3362
t1.frm
 
3363
t1.par
 
3364
SHOW CREATE TABLE t1;
 
3365
Table   Create Table
 
3366
t1      CREATE TABLE `t1` (
 
3367
  `a` int(11) DEFAULT NULL,
 
3368
  `b` varchar(64) DEFAULT NULL
 
3369
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3370
/*!50100 PARTITION BY LIST (a)
 
3371
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
3372
SELECT * FROM t1;
 
3373
a       b
 
3374
1       Original from partition p0
 
3375
2       Original from partition p0
 
3376
3       Original from partition p0
 
3377
4       Original from partition p0
 
3378
UNLOCK TABLES;
 
3379
DROP TABLE t1;
 
3380
SET SESSION debug="-d,fail_drop_partition_6";
 
3381
SET SESSION debug="+d,fail_drop_partition_7";
 
3382
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
3383
ENGINE = 'MyISAM'
 
3384
PARTITION BY LIST (a)
 
3385
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
3386
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
3387
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
3388
# State before failure
 
3389
t1#P#p0.MYD
 
3390
t1#P#p0.MYI
 
3391
t1#P#p10.MYD
 
3392
t1#P#p10.MYI
 
3393
t1.frm
 
3394
t1.par
 
3395
SHOW CREATE TABLE t1;
 
3396
Table   Create Table
 
3397
t1      CREATE TABLE `t1` (
 
3398
  `a` int(11) DEFAULT NULL,
 
3399
  `b` varchar(64) DEFAULT NULL
 
3400
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3401
/*!50100 PARTITION BY LIST (a)
 
3402
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3403
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3404
SELECT * FROM t1;
 
3405
a       b
 
3406
1       Original from partition p0
 
3407
11      Original from partition p1
 
3408
12      Original from partition p1
 
3409
13      Original from partition p1
 
3410
14      Original from partition p1
 
3411
2       Original from partition p0
 
3412
3       Original from partition p0
 
3413
4       Original from partition p0
 
3414
ALTER TABLE t1 DROP PARTITION p10;
 
3415
ERROR HY000: Unknown error
 
3416
# State after failure
 
3417
t1#P#p0.MYD
 
3418
t1#P#p0.MYI
 
3419
t1.frm
 
3420
t1.par
 
3421
SHOW CREATE TABLE t1;
 
3422
Table   Create Table
 
3423
t1      CREATE TABLE `t1` (
 
3424
  `a` int(11) DEFAULT NULL,
 
3425
  `b` varchar(64) DEFAULT NULL
 
3426
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3427
/*!50100 PARTITION BY LIST (a)
 
3428
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
3429
SELECT * FROM t1;
 
3430
a       b
 
3431
1       Original from partition p0
 
3432
2       Original from partition p0
 
3433
3       Original from partition p0
 
3434
4       Original from partition p0
 
3435
DROP TABLE t1;
 
3436
# Same test under LOCK TABLE
 
3437
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
3438
ENGINE = 'MyISAM'
 
3439
PARTITION BY LIST (a)
 
3440
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
3441
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
3442
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
3443
# State before failure
 
3444
t1#P#p0.MYD
 
3445
t1#P#p0.MYI
 
3446
t1#P#p10.MYD
 
3447
t1#P#p10.MYI
 
3448
t1.frm
 
3449
t1.par
 
3450
SHOW CREATE TABLE t1;
 
3451
Table   Create Table
 
3452
t1      CREATE TABLE `t1` (
 
3453
  `a` int(11) DEFAULT NULL,
 
3454
  `b` varchar(64) DEFAULT NULL
 
3455
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3456
/*!50100 PARTITION BY LIST (a)
 
3457
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3458
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3459
SELECT * FROM t1;
 
3460
a       b
 
3461
1       Original from partition p0
 
3462
11      Original from partition p1
 
3463
12      Original from partition p1
 
3464
13      Original from partition p1
 
3465
14      Original from partition p1
 
3466
2       Original from partition p0
 
3467
3       Original from partition p0
 
3468
4       Original from partition p0
 
3469
LOCK TABLE t1 WRITE;
 
3470
ALTER TABLE t1 DROP PARTITION p10;
 
3471
ERROR HY000: Unknown error
 
3472
# State after failure
 
3473
t1#P#p0.MYD
 
3474
t1#P#p0.MYI
 
3475
t1.frm
 
3476
t1.par
 
3477
SHOW CREATE TABLE t1;
 
3478
Table   Create Table
 
3479
t1      CREATE TABLE `t1` (
 
3480
  `a` int(11) DEFAULT NULL,
 
3481
  `b` varchar(64) DEFAULT NULL
 
3482
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3483
/*!50100 PARTITION BY LIST (a)
 
3484
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
3485
SELECT * FROM t1;
 
3486
a       b
 
3487
1       Original from partition p0
 
3488
2       Original from partition p0
 
3489
3       Original from partition p0
 
3490
4       Original from partition p0
 
3491
UNLOCK TABLES;
 
3492
DROP TABLE t1;
 
3493
SET SESSION debug="-d,fail_drop_partition_7";
 
3494
SET SESSION debug="+d,fail_drop_partition_8";
 
3495
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
3496
ENGINE = 'MyISAM'
 
3497
PARTITION BY LIST (a)
 
3498
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
3499
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
3500
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
3501
# State before failure
 
3502
t1#P#p0.MYD
 
3503
t1#P#p0.MYI
 
3504
t1#P#p10.MYD
 
3505
t1#P#p10.MYI
 
3506
t1.frm
 
3507
t1.par
 
3508
SHOW CREATE TABLE t1;
 
3509
Table   Create Table
 
3510
t1      CREATE TABLE `t1` (
 
3511
  `a` int(11) DEFAULT NULL,
 
3512
  `b` varchar(64) DEFAULT NULL
 
3513
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3514
/*!50100 PARTITION BY LIST (a)
 
3515
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3516
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3517
SELECT * FROM t1;
 
3518
a       b
 
3519
1       Original from partition p0
 
3520
11      Original from partition p1
 
3521
12      Original from partition p1
 
3522
13      Original from partition p1
 
3523
14      Original from partition p1
 
3524
2       Original from partition p0
 
3525
3       Original from partition p0
 
3526
4       Original from partition p0
 
3527
ALTER TABLE t1 DROP PARTITION p10;
 
3528
ERROR HY000: Unknown error
 
3529
# State after failure
 
3530
t1#P#p0.MYD
 
3531
t1#P#p0.MYI
 
3532
t1.frm
 
3533
t1.par
 
3534
SHOW CREATE TABLE t1;
 
3535
Table   Create Table
 
3536
t1      CREATE TABLE `t1` (
 
3537
  `a` int(11) DEFAULT NULL,
 
3538
  `b` varchar(64) DEFAULT NULL
 
3539
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3540
/*!50100 PARTITION BY LIST (a)
 
3541
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
3542
SELECT * FROM t1;
 
3543
a       b
 
3544
1       Original from partition p0
 
3545
2       Original from partition p0
 
3546
3       Original from partition p0
 
3547
4       Original from partition p0
 
3548
DROP TABLE t1;
 
3549
# Same test under LOCK TABLE
 
3550
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
3551
ENGINE = 'MyISAM'
 
3552
PARTITION BY LIST (a)
 
3553
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
3554
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
3555
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
3556
# State before failure
 
3557
t1#P#p0.MYD
 
3558
t1#P#p0.MYI
 
3559
t1#P#p10.MYD
 
3560
t1#P#p10.MYI
 
3561
t1.frm
 
3562
t1.par
 
3563
SHOW CREATE TABLE t1;
 
3564
Table   Create Table
 
3565
t1      CREATE TABLE `t1` (
 
3566
  `a` int(11) DEFAULT NULL,
 
3567
  `b` varchar(64) DEFAULT NULL
 
3568
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3569
/*!50100 PARTITION BY LIST (a)
 
3570
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3571
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3572
SELECT * FROM t1;
 
3573
a       b
 
3574
1       Original from partition p0
 
3575
11      Original from partition p1
 
3576
12      Original from partition p1
 
3577
13      Original from partition p1
 
3578
14      Original from partition p1
 
3579
2       Original from partition p0
 
3580
3       Original from partition p0
 
3581
4       Original from partition p0
 
3582
LOCK TABLE t1 WRITE;
 
3583
ALTER TABLE t1 DROP PARTITION p10;
 
3584
ERROR HY000: Unknown error
 
3585
# State after failure
 
3586
t1#P#p0.MYD
 
3587
t1#P#p0.MYI
 
3588
t1.frm
 
3589
t1.par
 
3590
SHOW CREATE TABLE t1;
 
3591
Table   Create Table
 
3592
t1      CREATE TABLE `t1` (
 
3593
  `a` int(11) DEFAULT NULL,
 
3594
  `b` varchar(64) DEFAULT NULL
 
3595
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3596
/*!50100 PARTITION BY LIST (a)
 
3597
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
3598
SELECT * FROM t1;
 
3599
a       b
 
3600
1       Original from partition p0
 
3601
2       Original from partition p0
 
3602
3       Original from partition p0
 
3603
4       Original from partition p0
 
3604
UNLOCK TABLES;
 
3605
DROP TABLE t1;
 
3606
SET SESSION debug="-d,fail_drop_partition_8";
 
3607
SET SESSION debug="+d,fail_drop_partition_9";
 
3608
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
3609
ENGINE = 'MyISAM'
 
3610
PARTITION BY LIST (a)
 
3611
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
3612
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
3613
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
3614
# State before failure
 
3615
t1#P#p0.MYD
 
3616
t1#P#p0.MYI
 
3617
t1#P#p10.MYD
 
3618
t1#P#p10.MYI
 
3619
t1.frm
 
3620
t1.par
 
3621
SHOW CREATE TABLE t1;
 
3622
Table   Create Table
 
3623
t1      CREATE TABLE `t1` (
 
3624
  `a` int(11) DEFAULT NULL,
 
3625
  `b` varchar(64) DEFAULT NULL
 
3626
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3627
/*!50100 PARTITION BY LIST (a)
 
3628
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3629
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3630
SELECT * FROM t1;
 
3631
a       b
 
3632
1       Original from partition p0
 
3633
11      Original from partition p1
 
3634
12      Original from partition p1
 
3635
13      Original from partition p1
 
3636
14      Original from partition p1
 
3637
2       Original from partition p0
 
3638
3       Original from partition p0
 
3639
4       Original from partition p0
 
3640
ALTER TABLE t1 DROP PARTITION p10;
 
3641
ERROR HY000: Unknown error
 
3642
# State after failure
 
3643
t1#P#p0.MYD
 
3644
t1#P#p0.MYI
 
3645
t1.frm
 
3646
t1.par
 
3647
SHOW CREATE TABLE t1;
 
3648
Table   Create Table
 
3649
t1      CREATE TABLE `t1` (
 
3650
  `a` int(11) DEFAULT NULL,
 
3651
  `b` varchar(64) DEFAULT NULL
 
3652
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3653
/*!50100 PARTITION BY LIST (a)
 
3654
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
3655
SELECT * FROM t1;
 
3656
a       b
 
3657
1       Original from partition p0
 
3658
2       Original from partition p0
 
3659
3       Original from partition p0
 
3660
4       Original from partition p0
 
3661
DROP TABLE t1;
 
3662
# Same test under LOCK TABLE
 
3663
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
3664
ENGINE = 'MyISAM'
 
3665
PARTITION BY LIST (a)
 
3666
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
3667
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
3668
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
3669
# State before failure
 
3670
t1#P#p0.MYD
 
3671
t1#P#p0.MYI
 
3672
t1#P#p10.MYD
 
3673
t1#P#p10.MYI
 
3674
t1.frm
 
3675
t1.par
 
3676
SHOW CREATE TABLE t1;
 
3677
Table   Create Table
 
3678
t1      CREATE TABLE `t1` (
 
3679
  `a` int(11) DEFAULT NULL,
 
3680
  `b` varchar(64) DEFAULT NULL
 
3681
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3682
/*!50100 PARTITION BY LIST (a)
 
3683
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3684
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3685
SELECT * FROM t1;
 
3686
a       b
 
3687
1       Original from partition p0
 
3688
11      Original from partition p1
 
3689
12      Original from partition p1
 
3690
13      Original from partition p1
 
3691
14      Original from partition p1
 
3692
2       Original from partition p0
 
3693
3       Original from partition p0
 
3694
4       Original from partition p0
 
3695
LOCK TABLE t1 WRITE;
 
3696
ALTER TABLE t1 DROP PARTITION p10;
 
3697
ERROR HY000: Unknown error
 
3698
# State after failure
 
3699
t1#P#p0.MYD
 
3700
t1#P#p0.MYI
 
3701
t1.frm
 
3702
t1.par
 
3703
SHOW CREATE TABLE t1;
 
3704
Table   Create Table
 
3705
t1      CREATE TABLE `t1` (
 
3706
  `a` int(11) DEFAULT NULL,
 
3707
  `b` varchar(64) DEFAULT NULL
 
3708
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3709
/*!50100 PARTITION BY LIST (a)
 
3710
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM) */
 
3711
SELECT * FROM t1;
 
3712
a       b
 
3713
1       Original from partition p0
 
3714
2       Original from partition p0
 
3715
3       Original from partition p0
 
3716
4       Original from partition p0
 
3717
UNLOCK TABLES;
 
3718
DROP TABLE t1;
 
3719
SET SESSION debug="-d,fail_drop_partition_9";
 
3720
# Test change partition (REORGANIZE/REBUILD/COALESCE
 
3721
# or ADD HASH PARTITION).
 
3722
SET SESSION debug="+d,crash_change_partition_1";
 
3723
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
3724
ENGINE = 'MyISAM'
 
3725
PARTITION BY LIST (a)
 
3726
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
3727
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
3728
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
3729
# State before crash
 
3730
t1#P#p0.MYD
 
3731
t1#P#p0.MYI
 
3732
t1#P#p10.MYD
 
3733
t1#P#p10.MYI
 
3734
t1.frm
 
3735
t1.par
 
3736
SHOW CREATE TABLE t1;
 
3737
Table   Create Table
 
3738
t1      CREATE TABLE `t1` (
 
3739
  `a` int(11) DEFAULT NULL,
 
3740
  `b` varchar(64) DEFAULT NULL
 
3741
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3742
/*!50100 PARTITION BY LIST (a)
 
3743
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3744
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3745
SELECT * FROM t1;
 
3746
a       b
 
3747
1       Original from partition p0
 
3748
11      Original from partition p1
 
3749
12      Original from partition p1
 
3750
13      Original from partition p1
 
3751
14      Original from partition p1
 
3752
2       Original from partition p0
 
3753
3       Original from partition p0
 
3754
4       Original from partition p0
 
3755
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
3756
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
3757
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
3758
ERROR HY000: Lost connection to MySQL server during query
 
3759
# State after crash (before recovery)
 
3760
t1#P#p0.MYD
 
3761
t1#P#p0.MYI
 
3762
t1#P#p10.MYD
 
3763
t1#P#p10.MYI
 
3764
t1.frm
 
3765
t1.par
 
3766
# State after crash recovery
 
3767
t1#P#p0.MYD
 
3768
t1#P#p0.MYI
 
3769
t1#P#p10.MYD
 
3770
t1#P#p10.MYI
 
3771
t1.frm
 
3772
t1.par
 
3773
SHOW CREATE TABLE t1;
 
3774
Table   Create Table
 
3775
t1      CREATE TABLE `t1` (
 
3776
  `a` int(11) DEFAULT NULL,
 
3777
  `b` varchar(64) DEFAULT NULL
 
3778
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3779
/*!50100 PARTITION BY LIST (a)
 
3780
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3781
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3782
SELECT * FROM t1;
 
3783
a       b
 
3784
1       Original from partition p0
 
3785
11      Original from partition p1
 
3786
12      Original from partition p1
 
3787
13      Original from partition p1
 
3788
14      Original from partition p1
 
3789
2       Original from partition p0
 
3790
3       Original from partition p0
 
3791
4       Original from partition p0
 
3792
DROP TABLE t1;
 
3793
SET SESSION debug="-d,crash_change_partition_1";
 
3794
SET SESSION debug="+d,crash_change_partition_2";
 
3795
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
3796
ENGINE = 'MyISAM'
 
3797
PARTITION BY LIST (a)
 
3798
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
3799
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
3800
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
3801
# State before crash
 
3802
t1#P#p0.MYD
 
3803
t1#P#p0.MYI
 
3804
t1#P#p10.MYD
 
3805
t1#P#p10.MYI
 
3806
t1.frm
 
3807
t1.par
 
3808
SHOW CREATE TABLE t1;
 
3809
Table   Create Table
 
3810
t1      CREATE TABLE `t1` (
 
3811
  `a` int(11) DEFAULT NULL,
 
3812
  `b` varchar(64) DEFAULT NULL
 
3813
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3814
/*!50100 PARTITION BY LIST (a)
 
3815
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3816
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3817
SELECT * FROM t1;
 
3818
a       b
 
3819
1       Original from partition p0
 
3820
11      Original from partition p1
 
3821
12      Original from partition p1
 
3822
13      Original from partition p1
 
3823
14      Original from partition p1
 
3824
2       Original from partition p0
 
3825
3       Original from partition p0
 
3826
4       Original from partition p0
 
3827
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
3828
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
3829
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
3830
ERROR HY000: Lost connection to MySQL server during query
 
3831
# State after crash (before recovery)
 
3832
#sql-t1.frm
 
3833
#sql-t1.par
 
3834
t1#P#p0.MYD
 
3835
t1#P#p0.MYI
 
3836
t1#P#p10.MYD
 
3837
t1#P#p10.MYI
 
3838
t1.frm
 
3839
t1.par
 
3840
# State after crash recovery
 
3841
t1#P#p0.MYD
 
3842
t1#P#p0.MYI
 
3843
t1#P#p10.MYD
 
3844
t1#P#p10.MYI
 
3845
t1.frm
 
3846
t1.par
 
3847
SHOW CREATE TABLE t1;
 
3848
Table   Create Table
 
3849
t1      CREATE TABLE `t1` (
 
3850
  `a` int(11) DEFAULT NULL,
 
3851
  `b` varchar(64) DEFAULT NULL
 
3852
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3853
/*!50100 PARTITION BY LIST (a)
 
3854
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3855
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3856
SELECT * FROM t1;
 
3857
a       b
 
3858
1       Original from partition p0
 
3859
11      Original from partition p1
 
3860
12      Original from partition p1
 
3861
13      Original from partition p1
 
3862
14      Original from partition p1
 
3863
2       Original from partition p0
 
3864
3       Original from partition p0
 
3865
4       Original from partition p0
 
3866
DROP TABLE t1;
 
3867
SET SESSION debug="-d,crash_change_partition_2";
 
3868
SET SESSION debug="+d,crash_change_partition_3";
 
3869
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
3870
ENGINE = 'MyISAM'
 
3871
PARTITION BY LIST (a)
 
3872
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
3873
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
3874
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
3875
# State before crash
 
3876
t1#P#p0.MYD
 
3877
t1#P#p0.MYI
 
3878
t1#P#p10.MYD
 
3879
t1#P#p10.MYI
 
3880
t1.frm
 
3881
t1.par
 
3882
SHOW CREATE TABLE t1;
 
3883
Table   Create Table
 
3884
t1      CREATE TABLE `t1` (
 
3885
  `a` int(11) DEFAULT NULL,
 
3886
  `b` varchar(64) DEFAULT NULL
 
3887
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3888
/*!50100 PARTITION BY LIST (a)
 
3889
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3890
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3891
SELECT * FROM t1;
 
3892
a       b
 
3893
1       Original from partition p0
 
3894
11      Original from partition p1
 
3895
12      Original from partition p1
 
3896
13      Original from partition p1
 
3897
14      Original from partition p1
 
3898
2       Original from partition p0
 
3899
3       Original from partition p0
 
3900
4       Original from partition p0
 
3901
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
3902
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
3903
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
3904
ERROR HY000: Lost connection to MySQL server during query
 
3905
# State after crash (before recovery)
 
3906
#sql-t1.frm
 
3907
#sql-t1.par
 
3908
t1#P#p0.MYD
 
3909
t1#P#p0.MYI
 
3910
t1#P#p10.MYD
 
3911
t1#P#p10.MYI
 
3912
t1.frm
 
3913
t1.par
 
3914
# State after crash recovery
 
3915
t1#P#p0.MYD
 
3916
t1#P#p0.MYI
 
3917
t1#P#p10.MYD
 
3918
t1#P#p10.MYI
 
3919
t1.frm
 
3920
t1.par
 
3921
SHOW CREATE TABLE t1;
 
3922
Table   Create Table
 
3923
t1      CREATE TABLE `t1` (
 
3924
  `a` int(11) DEFAULT NULL,
 
3925
  `b` varchar(64) DEFAULT NULL
 
3926
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3927
/*!50100 PARTITION BY LIST (a)
 
3928
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3929
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3930
SELECT * FROM t1;
 
3931
a       b
 
3932
1       Original from partition p0
 
3933
11      Original from partition p1
 
3934
12      Original from partition p1
 
3935
13      Original from partition p1
 
3936
14      Original from partition p1
 
3937
2       Original from partition p0
 
3938
3       Original from partition p0
 
3939
4       Original from partition p0
 
3940
DROP TABLE t1;
 
3941
SET SESSION debug="-d,crash_change_partition_3";
 
3942
SET SESSION debug="+d,crash_change_partition_4";
 
3943
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
3944
ENGINE = 'MyISAM'
 
3945
PARTITION BY LIST (a)
 
3946
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
3947
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
3948
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
3949
# State before crash
 
3950
t1#P#p0.MYD
 
3951
t1#P#p0.MYI
 
3952
t1#P#p10.MYD
 
3953
t1#P#p10.MYI
 
3954
t1.frm
 
3955
t1.par
 
3956
SHOW CREATE TABLE t1;
 
3957
Table   Create Table
 
3958
t1      CREATE TABLE `t1` (
 
3959
  `a` int(11) DEFAULT NULL,
 
3960
  `b` varchar(64) DEFAULT NULL
 
3961
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
3962
/*!50100 PARTITION BY LIST (a)
 
3963
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
3964
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
3965
SELECT * FROM t1;
 
3966
a       b
 
3967
1       Original from partition p0
 
3968
11      Original from partition p1
 
3969
12      Original from partition p1
 
3970
13      Original from partition p1
 
3971
14      Original from partition p1
 
3972
2       Original from partition p0
 
3973
3       Original from partition p0
 
3974
4       Original from partition p0
 
3975
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
3976
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
3977
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
3978
ERROR HY000: Lost connection to MySQL server during query
 
3979
# State after crash (before recovery)
 
3980
#sql-t1.frm
 
3981
#sql-t1.par
 
3982
t1#P#p0.MYD
 
3983
t1#P#p0.MYI
 
3984
t1#P#p10#TMP#.MYD
 
3985
t1#P#p10#TMP#.MYI
 
3986
t1#P#p10.MYD
 
3987
t1#P#p10.MYI
 
3988
t1#P#p20#TMP#.MYD
 
3989
t1#P#p20#TMP#.MYI
 
3990
t1.frm
 
3991
t1.par
 
3992
# State after crash recovery
 
3993
t1#P#p0.MYD
 
3994
t1#P#p0.MYI
 
3995
t1#P#p10.MYD
 
3996
t1#P#p10.MYI
 
3997
t1.frm
 
3998
t1.par
 
3999
SHOW CREATE TABLE t1;
 
4000
Table   Create Table
 
4001
t1      CREATE TABLE `t1` (
 
4002
  `a` int(11) DEFAULT NULL,
 
4003
  `b` varchar(64) DEFAULT NULL
 
4004
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4005
/*!50100 PARTITION BY LIST (a)
 
4006
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4007
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4008
SELECT * FROM t1;
 
4009
a       b
 
4010
1       Original from partition p0
 
4011
11      Original from partition p1
 
4012
12      Original from partition p1
 
4013
13      Original from partition p1
 
4014
14      Original from partition p1
 
4015
2       Original from partition p0
 
4016
3       Original from partition p0
 
4017
4       Original from partition p0
 
4018
DROP TABLE t1;
 
4019
SET SESSION debug="-d,crash_change_partition_4";
 
4020
SET SESSION debug="+d,crash_change_partition_5";
 
4021
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
4022
ENGINE = 'MyISAM'
 
4023
PARTITION BY LIST (a)
 
4024
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
4025
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
4026
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
4027
# State before crash
 
4028
t1#P#p0.MYD
 
4029
t1#P#p0.MYI
 
4030
t1#P#p10.MYD
 
4031
t1#P#p10.MYI
 
4032
t1.frm
 
4033
t1.par
 
4034
SHOW CREATE TABLE t1;
 
4035
Table   Create Table
 
4036
t1      CREATE TABLE `t1` (
 
4037
  `a` int(11) DEFAULT NULL,
 
4038
  `b` varchar(64) DEFAULT NULL
 
4039
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4040
/*!50100 PARTITION BY LIST (a)
 
4041
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4042
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4043
SELECT * FROM t1;
 
4044
a       b
 
4045
1       Original from partition p0
 
4046
11      Original from partition p1
 
4047
12      Original from partition p1
 
4048
13      Original from partition p1
 
4049
14      Original from partition p1
 
4050
2       Original from partition p0
 
4051
3       Original from partition p0
 
4052
4       Original from partition p0
 
4053
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
4054
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
4055
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
4056
ERROR HY000: Lost connection to MySQL server during query
 
4057
# State after crash (before recovery)
 
4058
#sql-t1.frm
 
4059
#sql-t1.par
 
4060
t1#P#p0.MYD
 
4061
t1#P#p0.MYI
 
4062
t1#P#p10#TMP#.MYD
 
4063
t1#P#p10#TMP#.MYI
 
4064
t1#P#p10.MYD
 
4065
t1#P#p10.MYI
 
4066
t1#P#p20#TMP#.MYD
 
4067
t1#P#p20#TMP#.MYI
 
4068
t1.frm
 
4069
t1.par
 
4070
# State after crash recovery
 
4071
t1#P#p0.MYD
 
4072
t1#P#p0.MYI
 
4073
t1#P#p10.MYD
 
4074
t1#P#p10.MYI
 
4075
t1.frm
 
4076
t1.par
 
4077
SHOW CREATE TABLE t1;
 
4078
Table   Create Table
 
4079
t1      CREATE TABLE `t1` (
 
4080
  `a` int(11) DEFAULT NULL,
 
4081
  `b` varchar(64) DEFAULT NULL
 
4082
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4083
/*!50100 PARTITION BY LIST (a)
 
4084
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4085
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4086
SELECT * FROM t1;
 
4087
a       b
 
4088
1       Original from partition p0
 
4089
11      Original from partition p1
 
4090
12      Original from partition p1
 
4091
13      Original from partition p1
 
4092
14      Original from partition p1
 
4093
2       Original from partition p0
 
4094
3       Original from partition p0
 
4095
4       Original from partition p0
 
4096
DROP TABLE t1;
 
4097
SET SESSION debug="-d,crash_change_partition_5";
 
4098
SET SESSION debug="+d,crash_change_partition_6";
 
4099
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
4100
ENGINE = 'MyISAM'
 
4101
PARTITION BY LIST (a)
 
4102
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
4103
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
4104
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
4105
# State before crash
 
4106
t1#P#p0.MYD
 
4107
t1#P#p0.MYI
 
4108
t1#P#p10.MYD
 
4109
t1#P#p10.MYI
 
4110
t1.frm
 
4111
t1.par
 
4112
SHOW CREATE TABLE t1;
 
4113
Table   Create Table
 
4114
t1      CREATE TABLE `t1` (
 
4115
  `a` int(11) DEFAULT NULL,
 
4116
  `b` varchar(64) DEFAULT NULL
 
4117
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4118
/*!50100 PARTITION BY LIST (a)
 
4119
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4120
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4121
SELECT * FROM t1;
 
4122
a       b
 
4123
1       Original from partition p0
 
4124
11      Original from partition p1
 
4125
12      Original from partition p1
 
4126
13      Original from partition p1
 
4127
14      Original from partition p1
 
4128
2       Original from partition p0
 
4129
3       Original from partition p0
 
4130
4       Original from partition p0
 
4131
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
4132
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
4133
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
4134
ERROR HY000: Lost connection to MySQL server during query
 
4135
# State after crash (before recovery)
 
4136
#sql-t1.frm
 
4137
#sql-t1.par
 
4138
t1#P#p0.MYD
 
4139
t1#P#p0.MYI
 
4140
t1#P#p10#TMP#.MYD
 
4141
t1#P#p10#TMP#.MYI
 
4142
t1#P#p10.MYD
 
4143
t1#P#p10.MYI
 
4144
t1#P#p20#TMP#.MYD
 
4145
t1#P#p20#TMP#.MYI
 
4146
t1.frm
 
4147
t1.par
 
4148
# State after crash recovery
 
4149
t1#P#p0.MYD
 
4150
t1#P#p0.MYI
 
4151
t1#P#p10.MYD
 
4152
t1#P#p10.MYI
 
4153
t1.frm
 
4154
t1.par
 
4155
SHOW CREATE TABLE t1;
 
4156
Table   Create Table
 
4157
t1      CREATE TABLE `t1` (
 
4158
  `a` int(11) DEFAULT NULL,
 
4159
  `b` varchar(64) DEFAULT NULL
 
4160
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4161
/*!50100 PARTITION BY LIST (a)
 
4162
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4163
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4164
SELECT * FROM t1;
 
4165
a       b
 
4166
1       Original from partition p0
 
4167
11      Original from partition p1
 
4168
12      Original from partition p1
 
4169
13      Original from partition p1
 
4170
14      Original from partition p1
 
4171
2       Original from partition p0
 
4172
3       Original from partition p0
 
4173
4       Original from partition p0
 
4174
DROP TABLE t1;
 
4175
SET SESSION debug="-d,crash_change_partition_6";
 
4176
SET SESSION debug="+d,crash_change_partition_7";
 
4177
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
4178
ENGINE = 'MyISAM'
 
4179
PARTITION BY LIST (a)
 
4180
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
4181
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
4182
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
4183
# State before crash
 
4184
t1#P#p0.MYD
 
4185
t1#P#p0.MYI
 
4186
t1#P#p10.MYD
 
4187
t1#P#p10.MYI
 
4188
t1.frm
 
4189
t1.par
 
4190
SHOW CREATE TABLE t1;
 
4191
Table   Create Table
 
4192
t1      CREATE TABLE `t1` (
 
4193
  `a` int(11) DEFAULT NULL,
 
4194
  `b` varchar(64) DEFAULT NULL
 
4195
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4196
/*!50100 PARTITION BY LIST (a)
 
4197
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4198
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4199
SELECT * FROM t1;
 
4200
a       b
 
4201
1       Original from partition p0
 
4202
11      Original from partition p1
 
4203
12      Original from partition p1
 
4204
13      Original from partition p1
 
4205
14      Original from partition p1
 
4206
2       Original from partition p0
 
4207
3       Original from partition p0
 
4208
4       Original from partition p0
 
4209
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
4210
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
4211
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
4212
ERROR HY000: Lost connection to MySQL server during query
 
4213
# State after crash (before recovery)
 
4214
#sql-t1.frm
 
4215
#sql-t1.par
 
4216
t1#P#p0.MYD
 
4217
t1#P#p0.MYI
 
4218
t1#P#p10#TMP#.MYD
 
4219
t1#P#p10#TMP#.MYI
 
4220
t1#P#p10.MYD
 
4221
t1#P#p10.MYI
 
4222
t1#P#p20#TMP#.MYD
 
4223
t1#P#p20#TMP#.MYI
 
4224
t1.frm
 
4225
t1.par
 
4226
# State after crash recovery
 
4227
t1#P#p0.MYD
 
4228
t1#P#p0.MYI
 
4229
t1#P#p10.MYD
 
4230
t1#P#p10.MYI
 
4231
t1#P#p20.MYD
 
4232
t1#P#p20.MYI
 
4233
t1.frm
 
4234
t1.par
 
4235
SHOW CREATE TABLE t1;
 
4236
Table   Create Table
 
4237
t1      CREATE TABLE `t1` (
 
4238
  `a` int(11) DEFAULT NULL,
 
4239
  `b` varchar(64) DEFAULT NULL
 
4240
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4241
/*!50100 PARTITION BY LIST (a)
 
4242
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4243
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
4244
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
4245
SELECT * FROM t1;
 
4246
a       b
 
4247
1       Original from partition p0
 
4248
11      Original from partition p1
 
4249
12      Original from partition p1
 
4250
13      Original from partition p1
 
4251
14      Original from partition p1
 
4252
2       Original from partition p0
 
4253
3       Original from partition p0
 
4254
4       Original from partition p0
 
4255
DROP TABLE t1;
 
4256
SET SESSION debug="-d,crash_change_partition_7";
 
4257
SET SESSION debug="+d,crash_change_partition_8";
 
4258
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
4259
ENGINE = 'MyISAM'
 
4260
PARTITION BY LIST (a)
 
4261
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
4262
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
4263
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
4264
# State before crash
 
4265
t1#P#p0.MYD
 
4266
t1#P#p0.MYI
 
4267
t1#P#p10.MYD
 
4268
t1#P#p10.MYI
 
4269
t1.frm
 
4270
t1.par
 
4271
SHOW CREATE TABLE t1;
 
4272
Table   Create Table
 
4273
t1      CREATE TABLE `t1` (
 
4274
  `a` int(11) DEFAULT NULL,
 
4275
  `b` varchar(64) DEFAULT NULL
 
4276
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4277
/*!50100 PARTITION BY LIST (a)
 
4278
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4279
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4280
SELECT * FROM t1;
 
4281
a       b
 
4282
1       Original from partition p0
 
4283
11      Original from partition p1
 
4284
12      Original from partition p1
 
4285
13      Original from partition p1
 
4286
14      Original from partition p1
 
4287
2       Original from partition p0
 
4288
3       Original from partition p0
 
4289
4       Original from partition p0
 
4290
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
4291
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
4292
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
4293
ERROR HY000: Lost connection to MySQL server during query
 
4294
# State after crash (before recovery)
 
4295
#sql-t1.frm
 
4296
#sql-t1.par
 
4297
t1#P#p0.MYD
 
4298
t1#P#p0.MYI
 
4299
t1#P#p10#TMP#.MYD
 
4300
t1#P#p10#TMP#.MYI
 
4301
t1#P#p10.MYD
 
4302
t1#P#p10.MYI
 
4303
t1#P#p20#TMP#.MYD
 
4304
t1#P#p20#TMP#.MYI
 
4305
t1.frm
 
4306
t1.par
 
4307
# State after crash recovery
 
4308
t1#P#p0.MYD
 
4309
t1#P#p0.MYI
 
4310
t1#P#p10.MYD
 
4311
t1#P#p10.MYI
 
4312
t1#P#p20.MYD
 
4313
t1#P#p20.MYI
 
4314
t1.frm
 
4315
t1.par
 
4316
SHOW CREATE TABLE t1;
 
4317
Table   Create Table
 
4318
t1      CREATE TABLE `t1` (
 
4319
  `a` int(11) DEFAULT NULL,
 
4320
  `b` varchar(64) DEFAULT NULL
 
4321
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4322
/*!50100 PARTITION BY LIST (a)
 
4323
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4324
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
4325
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
4326
SELECT * FROM t1;
 
4327
a       b
 
4328
1       Original from partition p0
 
4329
11      Original from partition p1
 
4330
12      Original from partition p1
 
4331
13      Original from partition p1
 
4332
14      Original from partition p1
 
4333
2       Original from partition p0
 
4334
3       Original from partition p0
 
4335
4       Original from partition p0
 
4336
DROP TABLE t1;
 
4337
SET SESSION debug="-d,crash_change_partition_8";
 
4338
SET SESSION debug="+d,crash_change_partition_9";
 
4339
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
4340
ENGINE = 'MyISAM'
 
4341
PARTITION BY LIST (a)
 
4342
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
4343
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
4344
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
4345
# State before crash
 
4346
t1#P#p0.MYD
 
4347
t1#P#p0.MYI
 
4348
t1#P#p10.MYD
 
4349
t1#P#p10.MYI
 
4350
t1.frm
 
4351
t1.par
 
4352
SHOW CREATE TABLE t1;
 
4353
Table   Create Table
 
4354
t1      CREATE TABLE `t1` (
 
4355
  `a` int(11) DEFAULT NULL,
 
4356
  `b` varchar(64) DEFAULT NULL
 
4357
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4358
/*!50100 PARTITION BY LIST (a)
 
4359
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4360
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4361
SELECT * FROM t1;
 
4362
a       b
 
4363
1       Original from partition p0
 
4364
11      Original from partition p1
 
4365
12      Original from partition p1
 
4366
13      Original from partition p1
 
4367
14      Original from partition p1
 
4368
2       Original from partition p0
 
4369
3       Original from partition p0
 
4370
4       Original from partition p0
 
4371
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
4372
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
4373
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
4374
ERROR HY000: Lost connection to MySQL server during query
 
4375
# State after crash (before recovery)
 
4376
t1#P#p0.MYD
 
4377
t1#P#p0.MYI
 
4378
t1#P#p10#TMP#.MYD
 
4379
t1#P#p10#TMP#.MYI
 
4380
t1#P#p10.MYD
 
4381
t1#P#p10.MYI
 
4382
t1#P#p20#TMP#.MYD
 
4383
t1#P#p20#TMP#.MYI
 
4384
t1.frm
 
4385
t1.par
 
4386
# State after crash recovery
 
4387
t1#P#p0.MYD
 
4388
t1#P#p0.MYI
 
4389
t1#P#p10.MYD
 
4390
t1#P#p10.MYI
 
4391
t1#P#p20.MYD
 
4392
t1#P#p20.MYI
 
4393
t1.frm
 
4394
t1.par
 
4395
SHOW CREATE TABLE t1;
 
4396
Table   Create Table
 
4397
t1      CREATE TABLE `t1` (
 
4398
  `a` int(11) DEFAULT NULL,
 
4399
  `b` varchar(64) DEFAULT NULL
 
4400
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4401
/*!50100 PARTITION BY LIST (a)
 
4402
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4403
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
4404
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
4405
SELECT * FROM t1;
 
4406
a       b
 
4407
1       Original from partition p0
 
4408
11      Original from partition p1
 
4409
12      Original from partition p1
 
4410
13      Original from partition p1
 
4411
14      Original from partition p1
 
4412
2       Original from partition p0
 
4413
3       Original from partition p0
 
4414
4       Original from partition p0
 
4415
DROP TABLE t1;
 
4416
SET SESSION debug="-d,crash_change_partition_9";
 
4417
SET SESSION debug="+d,crash_change_partition_10";
 
4418
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
4419
ENGINE = 'MyISAM'
 
4420
PARTITION BY LIST (a)
 
4421
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
4422
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
4423
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
4424
# State before crash
 
4425
t1#P#p0.MYD
 
4426
t1#P#p0.MYI
 
4427
t1#P#p10.MYD
 
4428
t1#P#p10.MYI
 
4429
t1.frm
 
4430
t1.par
 
4431
SHOW CREATE TABLE t1;
 
4432
Table   Create Table
 
4433
t1      CREATE TABLE `t1` (
 
4434
  `a` int(11) DEFAULT NULL,
 
4435
  `b` varchar(64) DEFAULT NULL
 
4436
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4437
/*!50100 PARTITION BY LIST (a)
 
4438
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4439
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4440
SELECT * FROM t1;
 
4441
a       b
 
4442
1       Original from partition p0
 
4443
11      Original from partition p1
 
4444
12      Original from partition p1
 
4445
13      Original from partition p1
 
4446
14      Original from partition p1
 
4447
2       Original from partition p0
 
4448
3       Original from partition p0
 
4449
4       Original from partition p0
 
4450
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
4451
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
4452
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
4453
ERROR HY000: Lost connection to MySQL server during query
 
4454
# State after crash (before recovery)
 
4455
t1#P#p0.MYD
 
4456
t1#P#p0.MYI
 
4457
t1#P#p10#TMP#.MYD
 
4458
t1#P#p10#TMP#.MYI
 
4459
t1#P#p10.MYD
 
4460
t1#P#p10.MYI
 
4461
t1#P#p20#TMP#.MYD
 
4462
t1#P#p20#TMP#.MYI
 
4463
t1.frm
 
4464
t1.par
 
4465
# State after crash recovery
 
4466
t1#P#p0.MYD
 
4467
t1#P#p0.MYI
 
4468
t1#P#p10.MYD
 
4469
t1#P#p10.MYI
 
4470
t1#P#p20.MYD
 
4471
t1#P#p20.MYI
 
4472
t1.frm
 
4473
t1.par
 
4474
SHOW CREATE TABLE t1;
 
4475
Table   Create Table
 
4476
t1      CREATE TABLE `t1` (
 
4477
  `a` int(11) DEFAULT NULL,
 
4478
  `b` varchar(64) DEFAULT NULL
 
4479
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4480
/*!50100 PARTITION BY LIST (a)
 
4481
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4482
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
4483
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
4484
SELECT * FROM t1;
 
4485
a       b
 
4486
1       Original from partition p0
 
4487
11      Original from partition p1
 
4488
12      Original from partition p1
 
4489
13      Original from partition p1
 
4490
14      Original from partition p1
 
4491
2       Original from partition p0
 
4492
3       Original from partition p0
 
4493
4       Original from partition p0
 
4494
DROP TABLE t1;
 
4495
SET SESSION debug="-d,crash_change_partition_10";
 
4496
SET SESSION debug="+d,crash_change_partition_11";
 
4497
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
4498
ENGINE = 'MyISAM'
 
4499
PARTITION BY LIST (a)
 
4500
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
4501
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
4502
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
4503
# State before crash
 
4504
t1#P#p0.MYD
 
4505
t1#P#p0.MYI
 
4506
t1#P#p10.MYD
 
4507
t1#P#p10.MYI
 
4508
t1.frm
 
4509
t1.par
 
4510
SHOW CREATE TABLE t1;
 
4511
Table   Create Table
 
4512
t1      CREATE TABLE `t1` (
 
4513
  `a` int(11) DEFAULT NULL,
 
4514
  `b` varchar(64) DEFAULT NULL
 
4515
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4516
/*!50100 PARTITION BY LIST (a)
 
4517
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4518
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4519
SELECT * FROM t1;
 
4520
a       b
 
4521
1       Original from partition p0
 
4522
11      Original from partition p1
 
4523
12      Original from partition p1
 
4524
13      Original from partition p1
 
4525
14      Original from partition p1
 
4526
2       Original from partition p0
 
4527
3       Original from partition p0
 
4528
4       Original from partition p0
 
4529
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
4530
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
4531
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
4532
ERROR HY000: Lost connection to MySQL server during query
 
4533
# State after crash (before recovery)
 
4534
t1#P#p0.MYD
 
4535
t1#P#p0.MYI
 
4536
t1#P#p10.MYD
 
4537
t1#P#p10.MYI
 
4538
t1#P#p20.MYD
 
4539
t1#P#p20.MYI
 
4540
t1.frm
 
4541
t1.par
 
4542
# State after crash recovery
 
4543
t1#P#p0.MYD
 
4544
t1#P#p0.MYI
 
4545
t1#P#p10.MYD
 
4546
t1#P#p10.MYI
 
4547
t1#P#p20.MYD
 
4548
t1#P#p20.MYI
 
4549
t1.frm
 
4550
t1.par
 
4551
SHOW CREATE TABLE t1;
 
4552
Table   Create Table
 
4553
t1      CREATE TABLE `t1` (
 
4554
  `a` int(11) DEFAULT NULL,
 
4555
  `b` varchar(64) DEFAULT NULL
 
4556
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4557
/*!50100 PARTITION BY LIST (a)
 
4558
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4559
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
4560
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
4561
SELECT * FROM t1;
 
4562
a       b
 
4563
1       Original from partition p0
 
4564
11      Original from partition p1
 
4565
12      Original from partition p1
 
4566
13      Original from partition p1
 
4567
14      Original from partition p1
 
4568
2       Original from partition p0
 
4569
3       Original from partition p0
 
4570
4       Original from partition p0
 
4571
DROP TABLE t1;
 
4572
SET SESSION debug="-d,crash_change_partition_11";
 
4573
SET SESSION debug="+d,crash_change_partition_12";
 
4574
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
4575
ENGINE = 'MyISAM'
 
4576
PARTITION BY LIST (a)
 
4577
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
4578
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
4579
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
4580
# State before crash
 
4581
t1#P#p0.MYD
 
4582
t1#P#p0.MYI
 
4583
t1#P#p10.MYD
 
4584
t1#P#p10.MYI
 
4585
t1.frm
 
4586
t1.par
 
4587
SHOW CREATE TABLE t1;
 
4588
Table   Create Table
 
4589
t1      CREATE TABLE `t1` (
 
4590
  `a` int(11) DEFAULT NULL,
 
4591
  `b` varchar(64) DEFAULT NULL
 
4592
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4593
/*!50100 PARTITION BY LIST (a)
 
4594
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4595
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4596
SELECT * FROM t1;
 
4597
a       b
 
4598
1       Original from partition p0
 
4599
11      Original from partition p1
 
4600
12      Original from partition p1
 
4601
13      Original from partition p1
 
4602
14      Original from partition p1
 
4603
2       Original from partition p0
 
4604
3       Original from partition p0
 
4605
4       Original from partition p0
 
4606
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
4607
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
4608
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
4609
ERROR HY000: Lost connection to MySQL server during query
 
4610
# State after crash (before recovery)
 
4611
t1#P#p0.MYD
 
4612
t1#P#p0.MYI
 
4613
t1#P#p10.MYD
 
4614
t1#P#p10.MYI
 
4615
t1#P#p20.MYD
 
4616
t1#P#p20.MYI
 
4617
t1.frm
 
4618
t1.par
 
4619
# State after crash recovery
 
4620
t1#P#p0.MYD
 
4621
t1#P#p0.MYI
 
4622
t1#P#p10.MYD
 
4623
t1#P#p10.MYI
 
4624
t1#P#p20.MYD
 
4625
t1#P#p20.MYI
 
4626
t1.frm
 
4627
t1.par
 
4628
SHOW CREATE TABLE t1;
 
4629
Table   Create Table
 
4630
t1      CREATE TABLE `t1` (
 
4631
  `a` int(11) DEFAULT NULL,
 
4632
  `b` varchar(64) DEFAULT NULL
 
4633
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4634
/*!50100 PARTITION BY LIST (a)
 
4635
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4636
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
4637
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
4638
SELECT * FROM t1;
 
4639
a       b
 
4640
1       Original from partition p0
 
4641
11      Original from partition p1
 
4642
12      Original from partition p1
 
4643
13      Original from partition p1
 
4644
14      Original from partition p1
 
4645
2       Original from partition p0
 
4646
3       Original from partition p0
 
4647
4       Original from partition p0
 
4648
DROP TABLE t1;
 
4649
SET SESSION debug="-d,crash_change_partition_12";
 
4650
# Error recovery change partition (REORGANIZE/REBUILD/COALESCE
 
4651
# or ADD HASH PARTITION).
 
4652
SET SESSION debug="+d,fail_change_partition_1";
 
4653
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
4654
ENGINE = 'MyISAM'
 
4655
PARTITION BY LIST (a)
 
4656
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
4657
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
4658
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
4659
# State before failure
 
4660
t1#P#p0.MYD
 
4661
t1#P#p0.MYI
 
4662
t1#P#p10.MYD
 
4663
t1#P#p10.MYI
 
4664
t1.frm
 
4665
t1.par
 
4666
SHOW CREATE TABLE t1;
 
4667
Table   Create Table
 
4668
t1      CREATE TABLE `t1` (
 
4669
  `a` int(11) DEFAULT NULL,
 
4670
  `b` varchar(64) DEFAULT NULL
 
4671
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4672
/*!50100 PARTITION BY LIST (a)
 
4673
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4674
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4675
SELECT * FROM t1;
 
4676
a       b
 
4677
1       Original from partition p0
 
4678
11      Original from partition p1
 
4679
12      Original from partition p1
 
4680
13      Original from partition p1
 
4681
14      Original from partition p1
 
4682
2       Original from partition p0
 
4683
3       Original from partition p0
 
4684
4       Original from partition p0
 
4685
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
4686
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
4687
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
4688
ERROR HY000: Unknown error
 
4689
# State after failure
 
4690
t1#P#p0.MYD
 
4691
t1#P#p0.MYI
 
4692
t1#P#p10.MYD
 
4693
t1#P#p10.MYI
 
4694
t1.frm
 
4695
t1.par
 
4696
SHOW CREATE TABLE t1;
 
4697
Table   Create Table
 
4698
t1      CREATE TABLE `t1` (
 
4699
  `a` int(11) DEFAULT NULL,
 
4700
  `b` varchar(64) DEFAULT NULL
 
4701
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4702
/*!50100 PARTITION BY LIST (a)
 
4703
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4704
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4705
SELECT * FROM t1;
 
4706
a       b
 
4707
1       Original from partition p0
 
4708
11      Original from partition p1
 
4709
12      Original from partition p1
 
4710
13      Original from partition p1
 
4711
14      Original from partition p1
 
4712
2       Original from partition p0
 
4713
3       Original from partition p0
 
4714
4       Original from partition p0
 
4715
DROP TABLE t1;
 
4716
# Same test under LOCK TABLE
 
4717
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
4718
ENGINE = 'MyISAM'
 
4719
PARTITION BY LIST (a)
 
4720
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
4721
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
4722
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
4723
# State before failure
 
4724
t1#P#p0.MYD
 
4725
t1#P#p0.MYI
 
4726
t1#P#p10.MYD
 
4727
t1#P#p10.MYI
 
4728
t1.frm
 
4729
t1.par
 
4730
SHOW CREATE TABLE t1;
 
4731
Table   Create Table
 
4732
t1      CREATE TABLE `t1` (
 
4733
  `a` int(11) DEFAULT NULL,
 
4734
  `b` varchar(64) DEFAULT NULL
 
4735
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4736
/*!50100 PARTITION BY LIST (a)
 
4737
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4738
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4739
SELECT * FROM t1;
 
4740
a       b
 
4741
1       Original from partition p0
 
4742
11      Original from partition p1
 
4743
12      Original from partition p1
 
4744
13      Original from partition p1
 
4745
14      Original from partition p1
 
4746
2       Original from partition p0
 
4747
3       Original from partition p0
 
4748
4       Original from partition p0
 
4749
LOCK TABLE t1 WRITE;
 
4750
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
4751
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
4752
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
4753
ERROR HY000: Unknown error
 
4754
# State after failure
 
4755
t1#P#p0.MYD
 
4756
t1#P#p0.MYI
 
4757
t1#P#p10.MYD
 
4758
t1#P#p10.MYI
 
4759
t1.frm
 
4760
t1.par
 
4761
SHOW CREATE TABLE t1;
 
4762
Table   Create Table
 
4763
t1      CREATE TABLE `t1` (
 
4764
  `a` int(11) DEFAULT NULL,
 
4765
  `b` varchar(64) DEFAULT NULL
 
4766
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4767
/*!50100 PARTITION BY LIST (a)
 
4768
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4769
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4770
SELECT * FROM t1;
 
4771
a       b
 
4772
1       Original from partition p0
 
4773
11      Original from partition p1
 
4774
12      Original from partition p1
 
4775
13      Original from partition p1
 
4776
14      Original from partition p1
 
4777
2       Original from partition p0
 
4778
3       Original from partition p0
 
4779
4       Original from partition p0
 
4780
UNLOCK TABLES;
 
4781
DROP TABLE t1;
 
4782
SET SESSION debug="-d,fail_change_partition_1";
 
4783
SET SESSION debug="+d,fail_change_partition_2";
 
4784
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
4785
ENGINE = 'MyISAM'
 
4786
PARTITION BY LIST (a)
 
4787
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
4788
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
4789
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
4790
# State before failure
 
4791
t1#P#p0.MYD
 
4792
t1#P#p0.MYI
 
4793
t1#P#p10.MYD
 
4794
t1#P#p10.MYI
 
4795
t1.frm
 
4796
t1.par
 
4797
SHOW CREATE TABLE t1;
 
4798
Table   Create Table
 
4799
t1      CREATE TABLE `t1` (
 
4800
  `a` int(11) DEFAULT NULL,
 
4801
  `b` varchar(64) DEFAULT NULL
 
4802
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4803
/*!50100 PARTITION BY LIST (a)
 
4804
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4805
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4806
SELECT * FROM t1;
 
4807
a       b
 
4808
1       Original from partition p0
 
4809
11      Original from partition p1
 
4810
12      Original from partition p1
 
4811
13      Original from partition p1
 
4812
14      Original from partition p1
 
4813
2       Original from partition p0
 
4814
3       Original from partition p0
 
4815
4       Original from partition p0
 
4816
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
4817
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
4818
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
4819
ERROR HY000: Unknown error
 
4820
# State after failure
 
4821
t1#P#p0.MYD
 
4822
t1#P#p0.MYI
 
4823
t1#P#p10.MYD
 
4824
t1#P#p10.MYI
 
4825
t1.frm
 
4826
t1.par
 
4827
SHOW CREATE TABLE t1;
 
4828
Table   Create Table
 
4829
t1      CREATE TABLE `t1` (
 
4830
  `a` int(11) DEFAULT NULL,
 
4831
  `b` varchar(64) DEFAULT NULL
 
4832
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4833
/*!50100 PARTITION BY LIST (a)
 
4834
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4835
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4836
SELECT * FROM t1;
 
4837
a       b
 
4838
1       Original from partition p0
 
4839
11      Original from partition p1
 
4840
12      Original from partition p1
 
4841
13      Original from partition p1
 
4842
14      Original from partition p1
 
4843
2       Original from partition p0
 
4844
3       Original from partition p0
 
4845
4       Original from partition p0
 
4846
DROP TABLE t1;
 
4847
# Same test under LOCK TABLE
 
4848
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
4849
ENGINE = 'MyISAM'
 
4850
PARTITION BY LIST (a)
 
4851
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
4852
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
4853
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
4854
# State before failure
 
4855
t1#P#p0.MYD
 
4856
t1#P#p0.MYI
 
4857
t1#P#p10.MYD
 
4858
t1#P#p10.MYI
 
4859
t1.frm
 
4860
t1.par
 
4861
SHOW CREATE TABLE t1;
 
4862
Table   Create Table
 
4863
t1      CREATE TABLE `t1` (
 
4864
  `a` int(11) DEFAULT NULL,
 
4865
  `b` varchar(64) DEFAULT NULL
 
4866
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4867
/*!50100 PARTITION BY LIST (a)
 
4868
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4869
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4870
SELECT * FROM t1;
 
4871
a       b
 
4872
1       Original from partition p0
 
4873
11      Original from partition p1
 
4874
12      Original from partition p1
 
4875
13      Original from partition p1
 
4876
14      Original from partition p1
 
4877
2       Original from partition p0
 
4878
3       Original from partition p0
 
4879
4       Original from partition p0
 
4880
LOCK TABLE t1 WRITE;
 
4881
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
4882
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
4883
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
4884
ERROR HY000: Unknown error
 
4885
# State after failure
 
4886
t1#P#p0.MYD
 
4887
t1#P#p0.MYI
 
4888
t1#P#p10.MYD
 
4889
t1#P#p10.MYI
 
4890
t1.frm
 
4891
t1.par
 
4892
SHOW CREATE TABLE t1;
 
4893
Table   Create Table
 
4894
t1      CREATE TABLE `t1` (
 
4895
  `a` int(11) DEFAULT NULL,
 
4896
  `b` varchar(64) DEFAULT NULL
 
4897
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4898
/*!50100 PARTITION BY LIST (a)
 
4899
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4900
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4901
SELECT * FROM t1;
 
4902
a       b
 
4903
1       Original from partition p0
 
4904
11      Original from partition p1
 
4905
12      Original from partition p1
 
4906
13      Original from partition p1
 
4907
14      Original from partition p1
 
4908
2       Original from partition p0
 
4909
3       Original from partition p0
 
4910
4       Original from partition p0
 
4911
UNLOCK TABLES;
 
4912
DROP TABLE t1;
 
4913
SET SESSION debug="-d,fail_change_partition_2";
 
4914
SET SESSION debug="+d,fail_change_partition_3";
 
4915
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
4916
ENGINE = 'MyISAM'
 
4917
PARTITION BY LIST (a)
 
4918
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
4919
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
4920
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
4921
# State before failure
 
4922
t1#P#p0.MYD
 
4923
t1#P#p0.MYI
 
4924
t1#P#p10.MYD
 
4925
t1#P#p10.MYI
 
4926
t1.frm
 
4927
t1.par
 
4928
SHOW CREATE TABLE t1;
 
4929
Table   Create Table
 
4930
t1      CREATE TABLE `t1` (
 
4931
  `a` int(11) DEFAULT NULL,
 
4932
  `b` varchar(64) DEFAULT NULL
 
4933
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4934
/*!50100 PARTITION BY LIST (a)
 
4935
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4936
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4937
SELECT * FROM t1;
 
4938
a       b
 
4939
1       Original from partition p0
 
4940
11      Original from partition p1
 
4941
12      Original from partition p1
 
4942
13      Original from partition p1
 
4943
14      Original from partition p1
 
4944
2       Original from partition p0
 
4945
3       Original from partition p0
 
4946
4       Original from partition p0
 
4947
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
4948
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
4949
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
4950
ERROR HY000: Unknown error
 
4951
# State after failure
 
4952
t1#P#p0.MYD
 
4953
t1#P#p0.MYI
 
4954
t1#P#p10.MYD
 
4955
t1#P#p10.MYI
 
4956
t1.frm
 
4957
t1.par
 
4958
SHOW CREATE TABLE t1;
 
4959
Table   Create Table
 
4960
t1      CREATE TABLE `t1` (
 
4961
  `a` int(11) DEFAULT NULL,
 
4962
  `b` varchar(64) DEFAULT NULL
 
4963
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4964
/*!50100 PARTITION BY LIST (a)
 
4965
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
4966
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
4967
SELECT * FROM t1;
 
4968
a       b
 
4969
1       Original from partition p0
 
4970
11      Original from partition p1
 
4971
12      Original from partition p1
 
4972
13      Original from partition p1
 
4973
14      Original from partition p1
 
4974
2       Original from partition p0
 
4975
3       Original from partition p0
 
4976
4       Original from partition p0
 
4977
DROP TABLE t1;
 
4978
# Same test under LOCK TABLE
 
4979
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
4980
ENGINE = 'MyISAM'
 
4981
PARTITION BY LIST (a)
 
4982
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
4983
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
4984
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
4985
# State before failure
 
4986
t1#P#p0.MYD
 
4987
t1#P#p0.MYI
 
4988
t1#P#p10.MYD
 
4989
t1#P#p10.MYI
 
4990
t1.frm
 
4991
t1.par
 
4992
SHOW CREATE TABLE t1;
 
4993
Table   Create Table
 
4994
t1      CREATE TABLE `t1` (
 
4995
  `a` int(11) DEFAULT NULL,
 
4996
  `b` varchar(64) DEFAULT NULL
 
4997
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
4998
/*!50100 PARTITION BY LIST (a)
 
4999
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5000
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5001
SELECT * FROM t1;
 
5002
a       b
 
5003
1       Original from partition p0
 
5004
11      Original from partition p1
 
5005
12      Original from partition p1
 
5006
13      Original from partition p1
 
5007
14      Original from partition p1
 
5008
2       Original from partition p0
 
5009
3       Original from partition p0
 
5010
4       Original from partition p0
 
5011
LOCK TABLE t1 WRITE;
 
5012
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
5013
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
5014
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
5015
ERROR HY000: Unknown error
 
5016
# State after failure
 
5017
t1#P#p0.MYD
 
5018
t1#P#p0.MYI
 
5019
t1#P#p10.MYD
 
5020
t1#P#p10.MYI
 
5021
t1.frm
 
5022
t1.par
 
5023
SHOW CREATE TABLE t1;
 
5024
Table   Create Table
 
5025
t1      CREATE TABLE `t1` (
 
5026
  `a` int(11) DEFAULT NULL,
 
5027
  `b` varchar(64) DEFAULT NULL
 
5028
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5029
/*!50100 PARTITION BY LIST (a)
 
5030
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5031
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5032
SELECT * FROM t1;
 
5033
a       b
 
5034
1       Original from partition p0
 
5035
11      Original from partition p1
 
5036
12      Original from partition p1
 
5037
13      Original from partition p1
 
5038
14      Original from partition p1
 
5039
2       Original from partition p0
 
5040
3       Original from partition p0
 
5041
4       Original from partition p0
 
5042
UNLOCK TABLES;
 
5043
DROP TABLE t1;
 
5044
SET SESSION debug="-d,fail_change_partition_3";
 
5045
SET SESSION debug="+d,fail_change_partition_4";
 
5046
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
5047
ENGINE = 'MyISAM'
 
5048
PARTITION BY LIST (a)
 
5049
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
5050
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
5051
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
5052
# State before failure
 
5053
t1#P#p0.MYD
 
5054
t1#P#p0.MYI
 
5055
t1#P#p10.MYD
 
5056
t1#P#p10.MYI
 
5057
t1.frm
 
5058
t1.par
 
5059
SHOW CREATE TABLE t1;
 
5060
Table   Create Table
 
5061
t1      CREATE TABLE `t1` (
 
5062
  `a` int(11) DEFAULT NULL,
 
5063
  `b` varchar(64) DEFAULT NULL
 
5064
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5065
/*!50100 PARTITION BY LIST (a)
 
5066
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5067
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5068
SELECT * FROM t1;
 
5069
a       b
 
5070
1       Original from partition p0
 
5071
11      Original from partition p1
 
5072
12      Original from partition p1
 
5073
13      Original from partition p1
 
5074
14      Original from partition p1
 
5075
2       Original from partition p0
 
5076
3       Original from partition p0
 
5077
4       Original from partition p0
 
5078
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
5079
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
5080
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
5081
ERROR HY000: Unknown error
 
5082
# State after failure
 
5083
t1#P#p0.MYD
 
5084
t1#P#p0.MYI
 
5085
t1#P#p10.MYD
 
5086
t1#P#p10.MYI
 
5087
t1.frm
 
5088
t1.par
 
5089
SHOW CREATE TABLE t1;
 
5090
Table   Create Table
 
5091
t1      CREATE TABLE `t1` (
 
5092
  `a` int(11) DEFAULT NULL,
 
5093
  `b` varchar(64) DEFAULT NULL
 
5094
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5095
/*!50100 PARTITION BY LIST (a)
 
5096
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5097
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5098
SELECT * FROM t1;
 
5099
a       b
 
5100
1       Original from partition p0
 
5101
11      Original from partition p1
 
5102
12      Original from partition p1
 
5103
13      Original from partition p1
 
5104
14      Original from partition p1
 
5105
2       Original from partition p0
 
5106
3       Original from partition p0
 
5107
4       Original from partition p0
 
5108
DROP TABLE t1;
 
5109
# Same test under LOCK TABLE
 
5110
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
5111
ENGINE = 'MyISAM'
 
5112
PARTITION BY LIST (a)
 
5113
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
5114
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
5115
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
5116
# State before failure
 
5117
t1#P#p0.MYD
 
5118
t1#P#p0.MYI
 
5119
t1#P#p10.MYD
 
5120
t1#P#p10.MYI
 
5121
t1.frm
 
5122
t1.par
 
5123
SHOW CREATE TABLE t1;
 
5124
Table   Create Table
 
5125
t1      CREATE TABLE `t1` (
 
5126
  `a` int(11) DEFAULT NULL,
 
5127
  `b` varchar(64) DEFAULT NULL
 
5128
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5129
/*!50100 PARTITION BY LIST (a)
 
5130
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5131
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5132
SELECT * FROM t1;
 
5133
a       b
 
5134
1       Original from partition p0
 
5135
11      Original from partition p1
 
5136
12      Original from partition p1
 
5137
13      Original from partition p1
 
5138
14      Original from partition p1
 
5139
2       Original from partition p0
 
5140
3       Original from partition p0
 
5141
4       Original from partition p0
 
5142
LOCK TABLE t1 WRITE;
 
5143
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
5144
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
5145
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
5146
ERROR HY000: Unknown error
 
5147
# State after failure
 
5148
t1#P#p0.MYD
 
5149
t1#P#p0.MYI
 
5150
t1#P#p10.MYD
 
5151
t1#P#p10.MYI
 
5152
t1.frm
 
5153
t1.par
 
5154
SHOW CREATE TABLE t1;
 
5155
Table   Create Table
 
5156
t1      CREATE TABLE `t1` (
 
5157
  `a` int(11) DEFAULT NULL,
 
5158
  `b` varchar(64) DEFAULT NULL
 
5159
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5160
/*!50100 PARTITION BY LIST (a)
 
5161
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5162
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5163
SELECT * FROM t1;
 
5164
a       b
 
5165
1       Original from partition p0
 
5166
11      Original from partition p1
 
5167
12      Original from partition p1
 
5168
13      Original from partition p1
 
5169
14      Original from partition p1
 
5170
2       Original from partition p0
 
5171
3       Original from partition p0
 
5172
4       Original from partition p0
 
5173
UNLOCK TABLES;
 
5174
DROP TABLE t1;
 
5175
SET SESSION debug="-d,fail_change_partition_4";
 
5176
SET SESSION debug="+d,fail_change_partition_5";
 
5177
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
5178
ENGINE = 'MyISAM'
 
5179
PARTITION BY LIST (a)
 
5180
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
5181
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
5182
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
5183
# State before failure
 
5184
t1#P#p0.MYD
 
5185
t1#P#p0.MYI
 
5186
t1#P#p10.MYD
 
5187
t1#P#p10.MYI
 
5188
t1.frm
 
5189
t1.par
 
5190
SHOW CREATE TABLE t1;
 
5191
Table   Create Table
 
5192
t1      CREATE TABLE `t1` (
 
5193
  `a` int(11) DEFAULT NULL,
 
5194
  `b` varchar(64) DEFAULT NULL
 
5195
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5196
/*!50100 PARTITION BY LIST (a)
 
5197
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5198
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5199
SELECT * FROM t1;
 
5200
a       b
 
5201
1       Original from partition p0
 
5202
11      Original from partition p1
 
5203
12      Original from partition p1
 
5204
13      Original from partition p1
 
5205
14      Original from partition p1
 
5206
2       Original from partition p0
 
5207
3       Original from partition p0
 
5208
4       Original from partition p0
 
5209
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
5210
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
5211
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
5212
ERROR HY000: Unknown error
 
5213
# State after failure
 
5214
t1#P#p0.MYD
 
5215
t1#P#p0.MYI
 
5216
t1#P#p10.MYD
 
5217
t1#P#p10.MYI
 
5218
t1.frm
 
5219
t1.par
 
5220
SHOW CREATE TABLE t1;
 
5221
Table   Create Table
 
5222
t1      CREATE TABLE `t1` (
 
5223
  `a` int(11) DEFAULT NULL,
 
5224
  `b` varchar(64) DEFAULT NULL
 
5225
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5226
/*!50100 PARTITION BY LIST (a)
 
5227
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5228
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5229
SELECT * FROM t1;
 
5230
a       b
 
5231
1       Original from partition p0
 
5232
11      Original from partition p1
 
5233
12      Original from partition p1
 
5234
13      Original from partition p1
 
5235
14      Original from partition p1
 
5236
2       Original from partition p0
 
5237
3       Original from partition p0
 
5238
4       Original from partition p0
 
5239
DROP TABLE t1;
 
5240
# Same test under LOCK TABLE
 
5241
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
5242
ENGINE = 'MyISAM'
 
5243
PARTITION BY LIST (a)
 
5244
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
5245
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
5246
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
5247
# State before failure
 
5248
t1#P#p0.MYD
 
5249
t1#P#p0.MYI
 
5250
t1#P#p10.MYD
 
5251
t1#P#p10.MYI
 
5252
t1.frm
 
5253
t1.par
 
5254
SHOW CREATE TABLE t1;
 
5255
Table   Create Table
 
5256
t1      CREATE TABLE `t1` (
 
5257
  `a` int(11) DEFAULT NULL,
 
5258
  `b` varchar(64) DEFAULT NULL
 
5259
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5260
/*!50100 PARTITION BY LIST (a)
 
5261
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5262
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5263
SELECT * FROM t1;
 
5264
a       b
 
5265
1       Original from partition p0
 
5266
11      Original from partition p1
 
5267
12      Original from partition p1
 
5268
13      Original from partition p1
 
5269
14      Original from partition p1
 
5270
2       Original from partition p0
 
5271
3       Original from partition p0
 
5272
4       Original from partition p0
 
5273
LOCK TABLE t1 WRITE;
 
5274
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
5275
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
5276
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
5277
ERROR HY000: Unknown error
 
5278
# State after failure
 
5279
t1#P#p0.MYD
 
5280
t1#P#p0.MYI
 
5281
t1#P#p10.MYD
 
5282
t1#P#p10.MYI
 
5283
t1.frm
 
5284
t1.par
 
5285
SHOW CREATE TABLE t1;
 
5286
Table   Create Table
 
5287
t1      CREATE TABLE `t1` (
 
5288
  `a` int(11) DEFAULT NULL,
 
5289
  `b` varchar(64) DEFAULT NULL
 
5290
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5291
/*!50100 PARTITION BY LIST (a)
 
5292
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5293
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5294
SELECT * FROM t1;
 
5295
a       b
 
5296
1       Original from partition p0
 
5297
11      Original from partition p1
 
5298
12      Original from partition p1
 
5299
13      Original from partition p1
 
5300
14      Original from partition p1
 
5301
2       Original from partition p0
 
5302
3       Original from partition p0
 
5303
4       Original from partition p0
 
5304
UNLOCK TABLES;
 
5305
DROP TABLE t1;
 
5306
SET SESSION debug="-d,fail_change_partition_5";
 
5307
SET SESSION debug="+d,fail_change_partition_6";
 
5308
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
5309
ENGINE = 'MyISAM'
 
5310
PARTITION BY LIST (a)
 
5311
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
5312
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
5313
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
5314
# State before failure
 
5315
t1#P#p0.MYD
 
5316
t1#P#p0.MYI
 
5317
t1#P#p10.MYD
 
5318
t1#P#p10.MYI
 
5319
t1.frm
 
5320
t1.par
 
5321
SHOW CREATE TABLE t1;
 
5322
Table   Create Table
 
5323
t1      CREATE TABLE `t1` (
 
5324
  `a` int(11) DEFAULT NULL,
 
5325
  `b` varchar(64) DEFAULT NULL
 
5326
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5327
/*!50100 PARTITION BY LIST (a)
 
5328
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5329
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5330
SELECT * FROM t1;
 
5331
a       b
 
5332
1       Original from partition p0
 
5333
11      Original from partition p1
 
5334
12      Original from partition p1
 
5335
13      Original from partition p1
 
5336
14      Original from partition p1
 
5337
2       Original from partition p0
 
5338
3       Original from partition p0
 
5339
4       Original from partition p0
 
5340
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
5341
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
5342
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
5343
ERROR HY000: Unknown error
 
5344
# State after failure
 
5345
t1#P#p0.MYD
 
5346
t1#P#p0.MYI
 
5347
t1#P#p10.MYD
 
5348
t1#P#p10.MYI
 
5349
t1.frm
 
5350
t1.par
 
5351
SHOW CREATE TABLE t1;
 
5352
Table   Create Table
 
5353
t1      CREATE TABLE `t1` (
 
5354
  `a` int(11) DEFAULT NULL,
 
5355
  `b` varchar(64) DEFAULT NULL
 
5356
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5357
/*!50100 PARTITION BY LIST (a)
 
5358
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5359
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5360
SELECT * FROM t1;
 
5361
a       b
 
5362
1       Original from partition p0
 
5363
11      Original from partition p1
 
5364
12      Original from partition p1
 
5365
13      Original from partition p1
 
5366
14      Original from partition p1
 
5367
2       Original from partition p0
 
5368
3       Original from partition p0
 
5369
4       Original from partition p0
 
5370
DROP TABLE t1;
 
5371
# Same test under LOCK TABLE
 
5372
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
5373
ENGINE = 'MyISAM'
 
5374
PARTITION BY LIST (a)
 
5375
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
5376
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
5377
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
5378
# State before failure
 
5379
t1#P#p0.MYD
 
5380
t1#P#p0.MYI
 
5381
t1#P#p10.MYD
 
5382
t1#P#p10.MYI
 
5383
t1.frm
 
5384
t1.par
 
5385
SHOW CREATE TABLE t1;
 
5386
Table   Create Table
 
5387
t1      CREATE TABLE `t1` (
 
5388
  `a` int(11) DEFAULT NULL,
 
5389
  `b` varchar(64) DEFAULT NULL
 
5390
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5391
/*!50100 PARTITION BY LIST (a)
 
5392
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5393
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5394
SELECT * FROM t1;
 
5395
a       b
 
5396
1       Original from partition p0
 
5397
11      Original from partition p1
 
5398
12      Original from partition p1
 
5399
13      Original from partition p1
 
5400
14      Original from partition p1
 
5401
2       Original from partition p0
 
5402
3       Original from partition p0
 
5403
4       Original from partition p0
 
5404
LOCK TABLE t1 WRITE;
 
5405
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
5406
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
5407
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
5408
ERROR HY000: Unknown error
 
5409
# State after failure
 
5410
t1#P#p0.MYD
 
5411
t1#P#p0.MYI
 
5412
t1#P#p10.MYD
 
5413
t1#P#p10.MYI
 
5414
t1.frm
 
5415
t1.par
 
5416
SHOW CREATE TABLE t1;
 
5417
Table   Create Table
 
5418
t1      CREATE TABLE `t1` (
 
5419
  `a` int(11) DEFAULT NULL,
 
5420
  `b` varchar(64) DEFAULT NULL
 
5421
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5422
/*!50100 PARTITION BY LIST (a)
 
5423
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5424
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5425
SELECT * FROM t1;
 
5426
a       b
 
5427
1       Original from partition p0
 
5428
11      Original from partition p1
 
5429
12      Original from partition p1
 
5430
13      Original from partition p1
 
5431
14      Original from partition p1
 
5432
2       Original from partition p0
 
5433
3       Original from partition p0
 
5434
4       Original from partition p0
 
5435
UNLOCK TABLES;
 
5436
DROP TABLE t1;
 
5437
SET SESSION debug="-d,fail_change_partition_6";
 
5438
SET SESSION debug="+d,fail_change_partition_7";
 
5439
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
5440
ENGINE = 'MyISAM'
 
5441
PARTITION BY LIST (a)
 
5442
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
5443
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
5444
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
5445
# State before failure
 
5446
t1#P#p0.MYD
 
5447
t1#P#p0.MYI
 
5448
t1#P#p10.MYD
 
5449
t1#P#p10.MYI
 
5450
t1.frm
 
5451
t1.par
 
5452
SHOW CREATE TABLE t1;
 
5453
Table   Create Table
 
5454
t1      CREATE TABLE `t1` (
 
5455
  `a` int(11) DEFAULT NULL,
 
5456
  `b` varchar(64) DEFAULT NULL
 
5457
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5458
/*!50100 PARTITION BY LIST (a)
 
5459
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5460
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5461
SELECT * FROM t1;
 
5462
a       b
 
5463
1       Original from partition p0
 
5464
11      Original from partition p1
 
5465
12      Original from partition p1
 
5466
13      Original from partition p1
 
5467
14      Original from partition p1
 
5468
2       Original from partition p0
 
5469
3       Original from partition p0
 
5470
4       Original from partition p0
 
5471
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
5472
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
5473
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
5474
ERROR HY000: Unknown error
 
5475
# State after failure
 
5476
t1#P#p0.MYD
 
5477
t1#P#p0.MYI
 
5478
t1#P#p10.MYD
 
5479
t1#P#p10.MYI
 
5480
t1#P#p20.MYD
 
5481
t1#P#p20.MYI
 
5482
t1.frm
 
5483
t1.par
 
5484
SHOW CREATE TABLE t1;
 
5485
Table   Create Table
 
5486
t1      CREATE TABLE `t1` (
 
5487
  `a` int(11) DEFAULT NULL,
 
5488
  `b` varchar(64) DEFAULT NULL
 
5489
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5490
/*!50100 PARTITION BY LIST (a)
 
5491
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5492
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
5493
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
5494
SELECT * FROM t1;
 
5495
a       b
 
5496
1       Original from partition p0
 
5497
11      Original from partition p1
 
5498
12      Original from partition p1
 
5499
13      Original from partition p1
 
5500
14      Original from partition p1
 
5501
2       Original from partition p0
 
5502
3       Original from partition p0
 
5503
4       Original from partition p0
 
5504
DROP TABLE t1;
 
5505
# Same test under LOCK TABLE
 
5506
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
5507
ENGINE = 'MyISAM'
 
5508
PARTITION BY LIST (a)
 
5509
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
5510
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
5511
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
5512
# State before failure
 
5513
t1#P#p0.MYD
 
5514
t1#P#p0.MYI
 
5515
t1#P#p10.MYD
 
5516
t1#P#p10.MYI
 
5517
t1.frm
 
5518
t1.par
 
5519
SHOW CREATE TABLE t1;
 
5520
Table   Create Table
 
5521
t1      CREATE TABLE `t1` (
 
5522
  `a` int(11) DEFAULT NULL,
 
5523
  `b` varchar(64) DEFAULT NULL
 
5524
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5525
/*!50100 PARTITION BY LIST (a)
 
5526
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5527
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5528
SELECT * FROM t1;
 
5529
a       b
 
5530
1       Original from partition p0
 
5531
11      Original from partition p1
 
5532
12      Original from partition p1
 
5533
13      Original from partition p1
 
5534
14      Original from partition p1
 
5535
2       Original from partition p0
 
5536
3       Original from partition p0
 
5537
4       Original from partition p0
 
5538
LOCK TABLE t1 WRITE;
 
5539
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
5540
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
5541
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
5542
ERROR HY000: Unknown error
 
5543
# State after failure
 
5544
t1#P#p0.MYD
 
5545
t1#P#p0.MYI
 
5546
t1#P#p10.MYD
 
5547
t1#P#p10.MYI
 
5548
t1#P#p20.MYD
 
5549
t1#P#p20.MYI
 
5550
t1.frm
 
5551
t1.par
 
5552
SHOW CREATE TABLE t1;
 
5553
Table   Create Table
 
5554
t1      CREATE TABLE `t1` (
 
5555
  `a` int(11) DEFAULT NULL,
 
5556
  `b` varchar(64) DEFAULT NULL
 
5557
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5558
/*!50100 PARTITION BY LIST (a)
 
5559
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5560
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
5561
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
5562
SELECT * FROM t1;
 
5563
a       b
 
5564
1       Original from partition p0
 
5565
11      Original from partition p1
 
5566
12      Original from partition p1
 
5567
13      Original from partition p1
 
5568
14      Original from partition p1
 
5569
2       Original from partition p0
 
5570
3       Original from partition p0
 
5571
4       Original from partition p0
 
5572
UNLOCK TABLES;
 
5573
DROP TABLE t1;
 
5574
SET SESSION debug="-d,fail_change_partition_7";
 
5575
SET SESSION debug="+d,fail_change_partition_8";
 
5576
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
5577
ENGINE = 'MyISAM'
 
5578
PARTITION BY LIST (a)
 
5579
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
5580
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
5581
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
5582
# State before failure
 
5583
t1#P#p0.MYD
 
5584
t1#P#p0.MYI
 
5585
t1#P#p10.MYD
 
5586
t1#P#p10.MYI
 
5587
t1.frm
 
5588
t1.par
 
5589
SHOW CREATE TABLE t1;
 
5590
Table   Create Table
 
5591
t1      CREATE TABLE `t1` (
 
5592
  `a` int(11) DEFAULT NULL,
 
5593
  `b` varchar(64) DEFAULT NULL
 
5594
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5595
/*!50100 PARTITION BY LIST (a)
 
5596
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5597
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5598
SELECT * FROM t1;
 
5599
a       b
 
5600
1       Original from partition p0
 
5601
11      Original from partition p1
 
5602
12      Original from partition p1
 
5603
13      Original from partition p1
 
5604
14      Original from partition p1
 
5605
2       Original from partition p0
 
5606
3       Original from partition p0
 
5607
4       Original from partition p0
 
5608
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
5609
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
5610
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
5611
ERROR HY000: Unknown error
 
5612
# State after failure
 
5613
t1#P#p0.MYD
 
5614
t1#P#p0.MYI
 
5615
t1#P#p10.MYD
 
5616
t1#P#p10.MYI
 
5617
t1#P#p20.MYD
 
5618
t1#P#p20.MYI
 
5619
t1.frm
 
5620
t1.par
 
5621
SHOW CREATE TABLE t1;
 
5622
Table   Create Table
 
5623
t1      CREATE TABLE `t1` (
 
5624
  `a` int(11) DEFAULT NULL,
 
5625
  `b` varchar(64) DEFAULT NULL
 
5626
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5627
/*!50100 PARTITION BY LIST (a)
 
5628
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5629
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
5630
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
5631
SELECT * FROM t1;
 
5632
a       b
 
5633
1       Original from partition p0
 
5634
11      Original from partition p1
 
5635
12      Original from partition p1
 
5636
13      Original from partition p1
 
5637
14      Original from partition p1
 
5638
2       Original from partition p0
 
5639
3       Original from partition p0
 
5640
4       Original from partition p0
 
5641
DROP TABLE t1;
 
5642
# Same test under LOCK TABLE
 
5643
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
5644
ENGINE = 'MyISAM'
 
5645
PARTITION BY LIST (a)
 
5646
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
5647
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
5648
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
5649
# State before failure
 
5650
t1#P#p0.MYD
 
5651
t1#P#p0.MYI
 
5652
t1#P#p10.MYD
 
5653
t1#P#p10.MYI
 
5654
t1.frm
 
5655
t1.par
 
5656
SHOW CREATE TABLE t1;
 
5657
Table   Create Table
 
5658
t1      CREATE TABLE `t1` (
 
5659
  `a` int(11) DEFAULT NULL,
 
5660
  `b` varchar(64) DEFAULT NULL
 
5661
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5662
/*!50100 PARTITION BY LIST (a)
 
5663
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5664
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5665
SELECT * FROM t1;
 
5666
a       b
 
5667
1       Original from partition p0
 
5668
11      Original from partition p1
 
5669
12      Original from partition p1
 
5670
13      Original from partition p1
 
5671
14      Original from partition p1
 
5672
2       Original from partition p0
 
5673
3       Original from partition p0
 
5674
4       Original from partition p0
 
5675
LOCK TABLE t1 WRITE;
 
5676
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
5677
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
5678
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
5679
ERROR HY000: Unknown error
 
5680
# State after failure
 
5681
t1#P#p0.MYD
 
5682
t1#P#p0.MYI
 
5683
t1#P#p10.MYD
 
5684
t1#P#p10.MYI
 
5685
t1#P#p20.MYD
 
5686
t1#P#p20.MYI
 
5687
t1.frm
 
5688
t1.par
 
5689
SHOW CREATE TABLE t1;
 
5690
Table   Create Table
 
5691
t1      CREATE TABLE `t1` (
 
5692
  `a` int(11) DEFAULT NULL,
 
5693
  `b` varchar(64) DEFAULT NULL
 
5694
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5695
/*!50100 PARTITION BY LIST (a)
 
5696
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5697
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
5698
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
5699
SELECT * FROM t1;
 
5700
a       b
 
5701
1       Original from partition p0
 
5702
11      Original from partition p1
 
5703
12      Original from partition p1
 
5704
13      Original from partition p1
 
5705
14      Original from partition p1
 
5706
2       Original from partition p0
 
5707
3       Original from partition p0
 
5708
4       Original from partition p0
 
5709
UNLOCK TABLES;
 
5710
DROP TABLE t1;
 
5711
SET SESSION debug="-d,fail_change_partition_8";
 
5712
SET SESSION debug="+d,fail_change_partition_9";
 
5713
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
5714
ENGINE = 'MyISAM'
 
5715
PARTITION BY LIST (a)
 
5716
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
5717
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
5718
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
5719
# State before failure
 
5720
t1#P#p0.MYD
 
5721
t1#P#p0.MYI
 
5722
t1#P#p10.MYD
 
5723
t1#P#p10.MYI
 
5724
t1.frm
 
5725
t1.par
 
5726
SHOW CREATE TABLE t1;
 
5727
Table   Create Table
 
5728
t1      CREATE TABLE `t1` (
 
5729
  `a` int(11) DEFAULT NULL,
 
5730
  `b` varchar(64) DEFAULT NULL
 
5731
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5732
/*!50100 PARTITION BY LIST (a)
 
5733
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5734
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5735
SELECT * FROM t1;
 
5736
a       b
 
5737
1       Original from partition p0
 
5738
11      Original from partition p1
 
5739
12      Original from partition p1
 
5740
13      Original from partition p1
 
5741
14      Original from partition p1
 
5742
2       Original from partition p0
 
5743
3       Original from partition p0
 
5744
4       Original from partition p0
 
5745
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
5746
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
5747
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
5748
ERROR HY000: Unknown error
 
5749
# State after failure
 
5750
t1#P#p0.MYD
 
5751
t1#P#p0.MYI
 
5752
t1#P#p10.MYD
 
5753
t1#P#p10.MYI
 
5754
t1#P#p20.MYD
 
5755
t1#P#p20.MYI
 
5756
t1.frm
 
5757
t1.par
 
5758
SHOW CREATE TABLE t1;
 
5759
Table   Create Table
 
5760
t1      CREATE TABLE `t1` (
 
5761
  `a` int(11) DEFAULT NULL,
 
5762
  `b` varchar(64) DEFAULT NULL
 
5763
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5764
/*!50100 PARTITION BY LIST (a)
 
5765
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5766
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
5767
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
5768
SELECT * FROM t1;
 
5769
a       b
 
5770
1       Original from partition p0
 
5771
11      Original from partition p1
 
5772
12      Original from partition p1
 
5773
13      Original from partition p1
 
5774
14      Original from partition p1
 
5775
2       Original from partition p0
 
5776
3       Original from partition p0
 
5777
4       Original from partition p0
 
5778
DROP TABLE t1;
 
5779
# Same test under LOCK TABLE
 
5780
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
5781
ENGINE = 'MyISAM'
 
5782
PARTITION BY LIST (a)
 
5783
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
5784
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
5785
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
5786
# State before failure
 
5787
t1#P#p0.MYD
 
5788
t1#P#p0.MYI
 
5789
t1#P#p10.MYD
 
5790
t1#P#p10.MYI
 
5791
t1.frm
 
5792
t1.par
 
5793
SHOW CREATE TABLE t1;
 
5794
Table   Create Table
 
5795
t1      CREATE TABLE `t1` (
 
5796
  `a` int(11) DEFAULT NULL,
 
5797
  `b` varchar(64) DEFAULT NULL
 
5798
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5799
/*!50100 PARTITION BY LIST (a)
 
5800
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5801
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5802
SELECT * FROM t1;
 
5803
a       b
 
5804
1       Original from partition p0
 
5805
11      Original from partition p1
 
5806
12      Original from partition p1
 
5807
13      Original from partition p1
 
5808
14      Original from partition p1
 
5809
2       Original from partition p0
 
5810
3       Original from partition p0
 
5811
4       Original from partition p0
 
5812
LOCK TABLE t1 WRITE;
 
5813
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
5814
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
5815
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
5816
ERROR HY000: Unknown error
 
5817
# State after failure
 
5818
t1#P#p0.MYD
 
5819
t1#P#p0.MYI
 
5820
t1#P#p10.MYD
 
5821
t1#P#p10.MYI
 
5822
t1#P#p20.MYD
 
5823
t1#P#p20.MYI
 
5824
t1.frm
 
5825
t1.par
 
5826
SHOW CREATE TABLE t1;
 
5827
Table   Create Table
 
5828
t1      CREATE TABLE `t1` (
 
5829
  `a` int(11) DEFAULT NULL,
 
5830
  `b` varchar(64) DEFAULT NULL
 
5831
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5832
/*!50100 PARTITION BY LIST (a)
 
5833
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5834
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
5835
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
5836
SELECT * FROM t1;
 
5837
a       b
 
5838
1       Original from partition p0
 
5839
11      Original from partition p1
 
5840
12      Original from partition p1
 
5841
13      Original from partition p1
 
5842
14      Original from partition p1
 
5843
2       Original from partition p0
 
5844
3       Original from partition p0
 
5845
4       Original from partition p0
 
5846
UNLOCK TABLES;
 
5847
DROP TABLE t1;
 
5848
SET SESSION debug="-d,fail_change_partition_9";
 
5849
SET SESSION debug="+d,fail_change_partition_10";
 
5850
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
5851
ENGINE = 'MyISAM'
 
5852
PARTITION BY LIST (a)
 
5853
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
5854
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
5855
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
5856
# State before failure
 
5857
t1#P#p0.MYD
 
5858
t1#P#p0.MYI
 
5859
t1#P#p10.MYD
 
5860
t1#P#p10.MYI
 
5861
t1.frm
 
5862
t1.par
 
5863
SHOW CREATE TABLE t1;
 
5864
Table   Create Table
 
5865
t1      CREATE TABLE `t1` (
 
5866
  `a` int(11) DEFAULT NULL,
 
5867
  `b` varchar(64) DEFAULT NULL
 
5868
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5869
/*!50100 PARTITION BY LIST (a)
 
5870
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5871
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5872
SELECT * FROM t1;
 
5873
a       b
 
5874
1       Original from partition p0
 
5875
11      Original from partition p1
 
5876
12      Original from partition p1
 
5877
13      Original from partition p1
 
5878
14      Original from partition p1
 
5879
2       Original from partition p0
 
5880
3       Original from partition p0
 
5881
4       Original from partition p0
 
5882
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
5883
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
5884
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
5885
ERROR HY000: Unknown error
 
5886
# State after failure
 
5887
t1#P#p0.MYD
 
5888
t1#P#p0.MYI
 
5889
t1#P#p10.MYD
 
5890
t1#P#p10.MYI
 
5891
t1#P#p20.MYD
 
5892
t1#P#p20.MYI
 
5893
t1.frm
 
5894
t1.par
 
5895
SHOW CREATE TABLE t1;
 
5896
Table   Create Table
 
5897
t1      CREATE TABLE `t1` (
 
5898
  `a` int(11) DEFAULT NULL,
 
5899
  `b` varchar(64) DEFAULT NULL
 
5900
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5901
/*!50100 PARTITION BY LIST (a)
 
5902
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5903
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
5904
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
5905
SELECT * FROM t1;
 
5906
a       b
 
5907
1       Original from partition p0
 
5908
11      Original from partition p1
 
5909
12      Original from partition p1
 
5910
13      Original from partition p1
 
5911
14      Original from partition p1
 
5912
2       Original from partition p0
 
5913
3       Original from partition p0
 
5914
4       Original from partition p0
 
5915
DROP TABLE t1;
 
5916
# Same test under LOCK TABLE
 
5917
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
5918
ENGINE = 'MyISAM'
 
5919
PARTITION BY LIST (a)
 
5920
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
5921
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
5922
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
5923
# State before failure
 
5924
t1#P#p0.MYD
 
5925
t1#P#p0.MYI
 
5926
t1#P#p10.MYD
 
5927
t1#P#p10.MYI
 
5928
t1.frm
 
5929
t1.par
 
5930
SHOW CREATE TABLE t1;
 
5931
Table   Create Table
 
5932
t1      CREATE TABLE `t1` (
 
5933
  `a` int(11) DEFAULT NULL,
 
5934
  `b` varchar(64) DEFAULT NULL
 
5935
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5936
/*!50100 PARTITION BY LIST (a)
 
5937
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5938
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
5939
SELECT * FROM t1;
 
5940
a       b
 
5941
1       Original from partition p0
 
5942
11      Original from partition p1
 
5943
12      Original from partition p1
 
5944
13      Original from partition p1
 
5945
14      Original from partition p1
 
5946
2       Original from partition p0
 
5947
3       Original from partition p0
 
5948
4       Original from partition p0
 
5949
LOCK TABLE t1 WRITE;
 
5950
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
5951
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
5952
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
5953
ERROR HY000: Unknown error
 
5954
# State after failure
 
5955
t1#P#p0.MYD
 
5956
t1#P#p0.MYI
 
5957
t1#P#p10.MYD
 
5958
t1#P#p10.MYI
 
5959
t1#P#p20.MYD
 
5960
t1#P#p20.MYI
 
5961
t1.frm
 
5962
t1.par
 
5963
SHOW CREATE TABLE t1;
 
5964
Table   Create Table
 
5965
t1      CREATE TABLE `t1` (
 
5966
  `a` int(11) DEFAULT NULL,
 
5967
  `b` varchar(64) DEFAULT NULL
 
5968
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
5969
/*!50100 PARTITION BY LIST (a)
 
5970
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
5971
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
5972
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
5973
SELECT * FROM t1;
 
5974
a       b
 
5975
1       Original from partition p0
 
5976
11      Original from partition p1
 
5977
12      Original from partition p1
 
5978
13      Original from partition p1
 
5979
14      Original from partition p1
 
5980
2       Original from partition p0
 
5981
3       Original from partition p0
 
5982
4       Original from partition p0
 
5983
UNLOCK TABLES;
 
5984
DROP TABLE t1;
 
5985
SET SESSION debug="-d,fail_change_partition_10";
 
5986
SET SESSION debug="+d,fail_change_partition_11";
 
5987
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
5988
ENGINE = 'MyISAM'
 
5989
PARTITION BY LIST (a)
 
5990
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
5991
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
5992
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
5993
# State before failure
 
5994
t1#P#p0.MYD
 
5995
t1#P#p0.MYI
 
5996
t1#P#p10.MYD
 
5997
t1#P#p10.MYI
 
5998
t1.frm
 
5999
t1.par
 
6000
SHOW CREATE TABLE t1;
 
6001
Table   Create Table
 
6002
t1      CREATE TABLE `t1` (
 
6003
  `a` int(11) DEFAULT NULL,
 
6004
  `b` varchar(64) DEFAULT NULL
 
6005
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
6006
/*!50100 PARTITION BY LIST (a)
 
6007
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
6008
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
6009
SELECT * FROM t1;
 
6010
a       b
 
6011
1       Original from partition p0
 
6012
11      Original from partition p1
 
6013
12      Original from partition p1
 
6014
13      Original from partition p1
 
6015
14      Original from partition p1
 
6016
2       Original from partition p0
 
6017
3       Original from partition p0
 
6018
4       Original from partition p0
 
6019
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
6020
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
6021
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
6022
ERROR HY000: Unknown error
 
6023
# State after failure
 
6024
t1#P#p0.MYD
 
6025
t1#P#p0.MYI
 
6026
t1#P#p10.MYD
 
6027
t1#P#p10.MYI
 
6028
t1#P#p20.MYD
 
6029
t1#P#p20.MYI
 
6030
t1.frm
 
6031
t1.par
 
6032
SHOW CREATE TABLE t1;
 
6033
Table   Create Table
 
6034
t1      CREATE TABLE `t1` (
 
6035
  `a` int(11) DEFAULT NULL,
 
6036
  `b` varchar(64) DEFAULT NULL
 
6037
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
6038
/*!50100 PARTITION BY LIST (a)
 
6039
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
6040
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
6041
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
6042
SELECT * FROM t1;
 
6043
a       b
 
6044
1       Original from partition p0
 
6045
11      Original from partition p1
 
6046
12      Original from partition p1
 
6047
13      Original from partition p1
 
6048
14      Original from partition p1
 
6049
2       Original from partition p0
 
6050
3       Original from partition p0
 
6051
4       Original from partition p0
 
6052
DROP TABLE t1;
 
6053
# Same test under LOCK TABLE
 
6054
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
6055
ENGINE = 'MyISAM'
 
6056
PARTITION BY LIST (a)
 
6057
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
6058
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
6059
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
6060
# State before failure
 
6061
t1#P#p0.MYD
 
6062
t1#P#p0.MYI
 
6063
t1#P#p10.MYD
 
6064
t1#P#p10.MYI
 
6065
t1.frm
 
6066
t1.par
 
6067
SHOW CREATE TABLE t1;
 
6068
Table   Create Table
 
6069
t1      CREATE TABLE `t1` (
 
6070
  `a` int(11) DEFAULT NULL,
 
6071
  `b` varchar(64) DEFAULT NULL
 
6072
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
6073
/*!50100 PARTITION BY LIST (a)
 
6074
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
6075
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
6076
SELECT * FROM t1;
 
6077
a       b
 
6078
1       Original from partition p0
 
6079
11      Original from partition p1
 
6080
12      Original from partition p1
 
6081
13      Original from partition p1
 
6082
14      Original from partition p1
 
6083
2       Original from partition p0
 
6084
3       Original from partition p0
 
6085
4       Original from partition p0
 
6086
LOCK TABLE t1 WRITE;
 
6087
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
6088
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
6089
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
6090
ERROR HY000: Unknown error
 
6091
# State after failure
 
6092
t1#P#p0.MYD
 
6093
t1#P#p0.MYI
 
6094
t1#P#p10.MYD
 
6095
t1#P#p10.MYI
 
6096
t1#P#p20.MYD
 
6097
t1#P#p20.MYI
 
6098
t1.frm
 
6099
t1.par
 
6100
SHOW CREATE TABLE t1;
 
6101
Table   Create Table
 
6102
t1      CREATE TABLE `t1` (
 
6103
  `a` int(11) DEFAULT NULL,
 
6104
  `b` varchar(64) DEFAULT NULL
 
6105
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
6106
/*!50100 PARTITION BY LIST (a)
 
6107
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
6108
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
6109
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
6110
SELECT * FROM t1;
 
6111
a       b
 
6112
1       Original from partition p0
 
6113
11      Original from partition p1
 
6114
12      Original from partition p1
 
6115
13      Original from partition p1
 
6116
14      Original from partition p1
 
6117
2       Original from partition p0
 
6118
3       Original from partition p0
 
6119
4       Original from partition p0
 
6120
UNLOCK TABLES;
 
6121
DROP TABLE t1;
 
6122
SET SESSION debug="-d,fail_change_partition_11";
 
6123
SET SESSION debug="+d,fail_change_partition_12";
 
6124
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
6125
ENGINE = 'MyISAM'
 
6126
PARTITION BY LIST (a)
 
6127
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
6128
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
6129
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
6130
# State before failure
 
6131
t1#P#p0.MYD
 
6132
t1#P#p0.MYI
 
6133
t1#P#p10.MYD
 
6134
t1#P#p10.MYI
 
6135
t1.frm
 
6136
t1.par
 
6137
SHOW CREATE TABLE t1;
 
6138
Table   Create Table
 
6139
t1      CREATE TABLE `t1` (
 
6140
  `a` int(11) DEFAULT NULL,
 
6141
  `b` varchar(64) DEFAULT NULL
 
6142
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
6143
/*!50100 PARTITION BY LIST (a)
 
6144
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
6145
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
6146
SELECT * FROM t1;
 
6147
a       b
 
6148
1       Original from partition p0
 
6149
11      Original from partition p1
 
6150
12      Original from partition p1
 
6151
13      Original from partition p1
 
6152
14      Original from partition p1
 
6153
2       Original from partition p0
 
6154
3       Original from partition p0
 
6155
4       Original from partition p0
 
6156
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
6157
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
6158
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
6159
ERROR HY000: Unknown error
 
6160
# State after failure
 
6161
t1#P#p0.MYD
 
6162
t1#P#p0.MYI
 
6163
t1#P#p10.MYD
 
6164
t1#P#p10.MYI
 
6165
t1#P#p20.MYD
 
6166
t1#P#p20.MYI
 
6167
t1.frm
 
6168
t1.par
 
6169
SHOW CREATE TABLE t1;
 
6170
Table   Create Table
 
6171
t1      CREATE TABLE `t1` (
 
6172
  `a` int(11) DEFAULT NULL,
 
6173
  `b` varchar(64) DEFAULT NULL
 
6174
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
6175
/*!50100 PARTITION BY LIST (a)
 
6176
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
6177
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
6178
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
6179
SELECT * FROM t1;
 
6180
a       b
 
6181
1       Original from partition p0
 
6182
11      Original from partition p1
 
6183
12      Original from partition p1
 
6184
13      Original from partition p1
 
6185
14      Original from partition p1
 
6186
2       Original from partition p0
 
6187
3       Original from partition p0
 
6188
4       Original from partition p0
 
6189
DROP TABLE t1;
 
6190
# Same test under LOCK TABLE
 
6191
CREATE TABLE t1 (a INT, b VARCHAR(64))
 
6192
ENGINE = 'MyISAM'
 
6193
PARTITION BY LIST (a)
 
6194
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9),
 
6195
PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19));
 
6196
INSERT INTO t1 VALUES (1, "Original from partition p0"), (2, "Original from partition p0"), (3, "Original from partition p0"), (4, "Original from partition p0"), (11, "Original from partition p1"), (12, "Original from partition p1"), (13, "Original from partition p1"), (14, "Original from partition p1");
 
6197
# State before failure
 
6198
t1#P#p0.MYD
 
6199
t1#P#p0.MYI
 
6200
t1#P#p10.MYD
 
6201
t1#P#p10.MYI
 
6202
t1.frm
 
6203
t1.par
 
6204
SHOW CREATE TABLE t1;
 
6205
Table   Create Table
 
6206
t1      CREATE TABLE `t1` (
 
6207
  `a` int(11) DEFAULT NULL,
 
6208
  `b` varchar(64) DEFAULT NULL
 
6209
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
6210
/*!50100 PARTITION BY LIST (a)
 
6211
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
6212
 PARTITION p10 VALUES IN (11,12,13,14,15,16,17,18,19) ENGINE = MyISAM) */
 
6213
SELECT * FROM t1;
 
6214
a       b
 
6215
1       Original from partition p0
 
6216
11      Original from partition p1
 
6217
12      Original from partition p1
 
6218
13      Original from partition p1
 
6219
14      Original from partition p1
 
6220
2       Original from partition p0
 
6221
3       Original from partition p0
 
6222
4       Original from partition p0
 
6223
LOCK TABLE t1 WRITE;
 
6224
ALTER TABLE t1 REORGANIZE PARTITION p10 INTO
 
6225
(PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19),
 
6226
PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29));
 
6227
ERROR HY000: Unknown error
 
6228
# State after failure
 
6229
t1#P#p0.MYD
 
6230
t1#P#p0.MYI
 
6231
t1#P#p10.MYD
 
6232
t1#P#p10.MYI
 
6233
t1#P#p20.MYD
 
6234
t1#P#p20.MYI
 
6235
t1.frm
 
6236
t1.par
 
6237
SHOW CREATE TABLE t1;
 
6238
Table   Create Table
 
6239
t1      CREATE TABLE `t1` (
 
6240
  `a` int(11) DEFAULT NULL,
 
6241
  `b` varchar(64) DEFAULT NULL
 
6242
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 
6243
/*!50100 PARTITION BY LIST (a)
 
6244
(PARTITION p0 VALUES IN (0,1,2,3,4,5,6,7,8,9) ENGINE = MyISAM,
 
6245
 PARTITION p10 VALUES IN (10,11,12,13,14,15,16,17,18,19) ENGINE = MyISAM,
 
6246
 PARTITION p20 VALUES IN (20,21,22,23,24,25,26,27,28,29) ENGINE = MyISAM) */
 
6247
SELECT * FROM t1;
 
6248
a       b
 
6249
1       Original from partition p0
 
6250
11      Original from partition p1
 
6251
12      Original from partition p1
 
6252
13      Original from partition p1
 
6253
14      Original from partition p1
 
6254
2       Original from partition p0
 
6255
3       Original from partition p0
 
6256
4       Original from partition p0
 
6257
UNLOCK TABLES;
 
6258
DROP TABLE t1;
 
6259
SET SESSION debug="-d,fail_change_partition_12";