summaryrefslogtreecommitdiff
path: root/mysql-test/suite/innodb/r/instant_alter_rollback.result
blob: ce49cea234326c9edbfc23dadc0d017741cad6a8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
FLUSH TABLES;
#
# MDEV-11369: Instant ADD COLUMN for InnoDB
#
connect to_be_killed, localhost, root;
CREATE TABLE empty_REDUNDANT
(id INT PRIMARY KEY, c2 INT UNIQUE) ENGINE=InnoDB ROW_FORMAT=REDUNDANT;
CREATE TABLE once_REDUNDANT LIKE empty_REDUNDANT;
CREATE TABLE twice_REDUNDANT LIKE empty_REDUNDANT;
INSERT INTO once_REDUNDANT SET id=1,c2=1;
INSERT INTO twice_REDUNDANT SET id=1,c2=1;
ALTER TABLE empty_REDUNDANT ADD COLUMN (d1 INT DEFAULT 15);
ALTER TABLE once_REDUNDANT ADD COLUMN (d1 INT DEFAULT 20);
ALTER TABLE twice_REDUNDANT ADD COLUMN (d1 INT DEFAULT 20);
ALTER TABLE twice_REDUNDANT ADD COLUMN
(d2 INT NOT NULL DEFAULT 10,
d3 VARCHAR(15) NOT NULL DEFAULT 'var och en char');
CREATE TABLE empty_COMPACT
(id INT PRIMARY KEY, c2 INT UNIQUE) ENGINE=InnoDB ROW_FORMAT=COMPACT;
CREATE TABLE once_COMPACT LIKE empty_COMPACT;
CREATE TABLE twice_COMPACT LIKE empty_COMPACT;
INSERT INTO once_COMPACT SET id=1,c2=1;
INSERT INTO twice_COMPACT SET id=1,c2=1;
ALTER TABLE empty_COMPACT ADD COLUMN (d1 INT DEFAULT 15);
ALTER TABLE once_COMPACT ADD COLUMN (d1 INT DEFAULT 20);
ALTER TABLE twice_COMPACT ADD COLUMN (d1 INT DEFAULT 20);
ALTER TABLE twice_COMPACT ADD COLUMN
(d2 INT NOT NULL DEFAULT 10,
d3 VARCHAR(15) NOT NULL DEFAULT 'var och en char');
CREATE TABLE empty_DYNAMIC
(id INT PRIMARY KEY, c2 INT UNIQUE) ENGINE=InnoDB ROW_FORMAT=DYNAMIC;
CREATE TABLE once_DYNAMIC LIKE empty_DYNAMIC;
CREATE TABLE twice_DYNAMIC LIKE empty_DYNAMIC;
INSERT INTO once_DYNAMIC SET id=1,c2=1;
INSERT INTO twice_DYNAMIC SET id=1,c2=1;
ALTER TABLE empty_DYNAMIC ADD COLUMN (d1 INT DEFAULT 15);
ALTER TABLE once_DYNAMIC ADD COLUMN (d1 INT DEFAULT 20);
ALTER TABLE twice_DYNAMIC ADD COLUMN (d1 INT DEFAULT 20);
ALTER TABLE twice_DYNAMIC ADD COLUMN
(d2 INT NOT NULL DEFAULT 10,
d3 VARCHAR(15) NOT NULL DEFAULT 'var och en char');
BEGIN;
INSERT INTO empty_REDUNDANT set id=0,c2=42;
UPDATE once_REDUNDANT set c2=c2+1;
UPDATE twice_REDUNDANT set c2=c2+1;
INSERT INTO twice_REDUNDANT SET id=2,c2=0,d3='';
INSERT INTO empty_COMPACT set id=0,c2=42;
UPDATE once_COMPACT set c2=c2+1;
UPDATE twice_COMPACT set c2=c2+1;
INSERT INTO twice_COMPACT SET id=2,c2=0,d3='';
INSERT INTO empty_DYNAMIC set id=0,c2=42;
UPDATE once_DYNAMIC set c2=c2+1;
UPDATE twice_DYNAMIC set c2=c2+1;
INSERT INTO twice_DYNAMIC SET id=2,c2=0,d3='';
connection default;
SET GLOBAL innodb_flush_log_at_trx_commit=1;
CREATE TABLE foo(a INT PRIMARY KEY) ENGINE=InnoDB;
# Kill the server
disconnect to_be_killed;
SET @saved_frequency= @@GLOBAL.innodb_purge_rseg_truncate_frequency;
SET GLOBAL innodb_purge_rseg_truncate_frequency=1;
DROP TABLE foo;
InnoDB		0 transactions not purged
SET GLOBAL innodb_purge_rseg_truncate_frequency=@saved_frequency;
SELECT * FROM empty_REDUNDANT;
id	c2	d1
SELECT * FROM once_REDUNDANT;
id	c2	d1
1	1	20
SELECT * FROM twice_REDUNDANT;
id	c2	d1	d2	d3
1	1	20	10	var och en char
DROP TABLE empty_REDUNDANT, once_REDUNDANT, twice_REDUNDANT;
SELECT * FROM empty_COMPACT;
id	c2	d1
SELECT * FROM once_COMPACT;
id	c2	d1
1	1	20
SELECT * FROM twice_COMPACT;
id	c2	d1	d2	d3
1	1	20	10	var och en char
DROP TABLE empty_COMPACT, once_COMPACT, twice_COMPACT;
SELECT * FROM empty_DYNAMIC;
id	c2	d1
SELECT * FROM once_DYNAMIC;
id	c2	d1
1	1	20
SELECT * FROM twice_DYNAMIC;
id	c2	d1	d2	d3
1	1	20	10	var och en char
DROP TABLE empty_DYNAMIC, once_DYNAMIC, twice_DYNAMIC;