~jlukas79/+junk/mysql-server

« back to all changes in this revision

Viewing changes to mysql-test/r/backup_snapshot.result

manual merge 6.0-main --> 6.0-bka-review

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
SET DEBUG_SYNC= 'reset';
1
2
DROP DATABASE IF EXISTS bup_snapshot;
 
3
#
 
4
# Setup for tests.
 
5
#
2
6
CREATE DATABASE bup_snapshot;
3
 
SET GLOBAL debug="d,backup_debug:d,backup";
4
7
CREATE TABLE bup_snapshot.t1 (word CHAR(20)) ENGINE=INNODB;
5
8
INSERT INTO bup_snapshot.t1 VALUES ("01 Some data to test");
6
9
INSERT INTO bup_snapshot.t1 VALUES ("02 Some data to test");
23
26
SELECT COUNT(*) FROM bup_snapshot.t2;
24
27
COUNT(*)
25
28
5
26
 
con3: Getting lock on driver.
27
 
SELECT get_lock("backup_cs_locked", 100);
28
 
get_lock("backup_cs_locked", 100)
29
 
1
30
 
con1: Backing up database. Spawn this and continue...
31
 
BACKUP DATABASE bup_snapshot TO "bup_snapshot.bak";
32
 
con3: Checking locks.
33
 
INSERT INTO bup_snapshot.t1 VALUES("- Dave Mathews");
34
 
con3: Checking locks.
35
 
con3: Release lock on driver.
36
 
SELECT release_lock("backup_cs_locked");
37
 
release_lock("backup_cs_locked")
38
 
1
39
 
backup_id
40
 
#
41
 
INSERT INTO bup_snapshot.t1 VALUES("- Yes");
42
 
INSERT INTO bup_snapshot.t1 VALUES("- Jethro Tull");
43
 
DELETE FROM bup_snapshot.t1 WHERE word LIKE '10%';
44
 
con2: Showing the data after inserts.
45
 
SELECT * FROM bup_snapshot.t1 WHERE word LIKE '-%';
46
 
word
47
 
- Dave Mathews
48
 
- Yes
49
 
- Jethro Tull
50
 
SELECT COUNT(*) FROM bup_snapshot.t1;
51
 
COUNT(*)
52
 
12
53
 
con1: Dropping the database
54
 
DROP TABLE bup_snapshot.t1;
55
 
con1: Restoring the database
56
 
RESTORE FROM "bup_snapshot.bak";
57
 
backup_id
58
 
#
59
 
con1: Showing the data (no new data should be here).
60
 
SELECT * FROM bup_snapshot.t1 WHERE word LIKE '-%';
61
 
word
62
 
SELECT COUNT(*) FROM bup_snapshot.t1;
63
 
COUNT(*)
64
 
10
65
 
SELECT COUNT(*) FROM bup_snapshot.t2;
66
 
COUNT(*)
67
 
5
68
 
con3: Getting lock on driver.
69
 
SELECT get_lock("backup_cs_reading", 100);
70
 
get_lock("backup_cs_reading", 100)
71
 
1
72
 
con1: Backing up database. Spawn this and continue...
73
 
BACKUP DATABASE bup_snapshot TO "bup_snapshot.bak";
74
 
con3: Checking locks.
75
 
INSERT INTO bup_snapshot.t1 VALUES("- Dave Mathews");
76
 
con3: Checking locks.
77
 
con3: Release lock on driver.
78
 
SELECT release_lock("backup_cs_reading");
79
 
release_lock("backup_cs_reading")
80
 
1
81
 
INSERT INTO bup_snapshot.t1 VALUES("- Yes");
82
 
INSERT INTO bup_snapshot.t1 VALUES("- Jethro Tull");
83
 
DELETE FROM bup_snapshot.t1 WHERE word LIKE '10%';
84
 
con2: Showing the data after inserts.
85
 
SELECT * FROM bup_snapshot.t1 WHERE word LIKE '-%';
86
 
word
87
 
- Dave Mathews
88
 
- Yes
89
 
- Jethro Tull
90
 
SELECT COUNT(*) FROM bup_snapshot.t1;
91
 
COUNT(*)
92
 
12
93
 
backup_id
94
 
#
95
 
con1: Dropping the database
96
 
DROP TABLE bup_snapshot.t1;
97
 
con1: Restoring the database
98
 
RESTORE FROM "bup_snapshot.bak";
99
 
backup_id
100
 
#
101
 
con1: Showing the data (no new data should be here).
102
 
SELECT * FROM bup_snapshot.t1 WHERE word LIKE '-%';
103
 
word
104
 
SELECT COUNT(*) FROM bup_snapshot.t1;
105
 
COUNT(*)
106
 
10
107
 
SELECT COUNT(*) FROM bup_snapshot.t2;
108
 
COUNT(*)
109
 
5
 
29
#
 
30
# Test 1: Check for consistent read prior to open and lock tables
 
31
#
 
32
con1: Activate sync points for the backup statement.
 
33
SET DEBUG_SYNC= 'after_backup_cs_locked SIGNAL locked WAIT_FOR inserting';
 
34
con1: Backing up database. Spawn this and continue...
 
35
BACKUP DATABASE bup_snapshot TO "bup_snapshot.bak";
 
36
con2: Wait for backup to have locked the transaction.
 
37
SET DEBUG_SYNC= 'now WAIT_FOR locked';
 
38
con2: Start an insert now that CS has a transaction 
 
39
con2: Activate sync points for the insert statement.
 
40
SET DEBUG_SYNC= 'wait_if_global_read_lock SIGNAL inserting';
 
41
INSERT INTO bup_snapshot.t1 VALUES("- Dave Mathews");
 
42
con2: insert additional rows.
 
43
INSERT INTO bup_snapshot.t1 VALUES("- Yes");
 
44
INSERT INTO bup_snapshot.t1 VALUES("- Jethro Tull");
 
45
DELETE FROM bup_snapshot.t1 WHERE word LIKE '10%';
 
46
con2: Showing the data after inserts.
 
47
SELECT * FROM bup_snapshot.t1 WHERE word LIKE '-%';
 
48
word
 
49
- Dave Mathews
 
50
- Yes
 
51
- Jethro Tull
 
52
SELECT COUNT(*) FROM bup_snapshot.t1;
 
53
COUNT(*)
 
54
12
 
55
con1: retrieve backup result.
 
56
backup_id
 
57
#
 
58
# Now restore the database and then check to make sure the new rows
 
59
# were not backed up.
 
60
con1: Dropping the database
 
61
DROP TABLE bup_snapshot.t1;
 
62
con1: Restoring the database
 
63
RESTORE FROM "bup_snapshot.bak";
 
64
backup_id
 
65
#
 
66
con1: Showing the data (no new data should be here).
 
67
SELECT * FROM bup_snapshot.t1 WHERE word LIKE '-%';
 
68
word
 
69
SELECT COUNT(*) FROM bup_snapshot.t1;
 
70
COUNT(*)
 
71
10
 
72
SELECT COUNT(*) FROM bup_snapshot.t2;
 
73
COUNT(*)
 
74
5
 
75
#
 
76
# Test 2: Check for consistent read after open and lock tables
 
77
#
 
78
con1: Activate sync points for the backup statement.
 
79
SET DEBUG_SYNC= 'when_backup_cs_reading SIGNAL reading WAIT_FOR inserting';
 
80
con1: Backing up database. Spawn this and continue...
 
81
BACKUP DATABASE bup_snapshot TO "bup_snapshot.bak";
 
82
con2: Wait for backup to start reading.
 
83
SET DEBUG_SYNC= 'now WAIT_FOR reading';
 
84
con2: Start an insert now that CS has a transaction 
 
85
con2: Activate sync points for the insert statement.
 
86
SET DEBUG_SYNC= 'after_insert_locked_tables SIGNAL inserting';
 
87
INSERT INTO bup_snapshot.t1 VALUES("- Dave Mathews");
 
88
con2: insert additional rows.
 
89
INSERT INTO bup_snapshot.t1 VALUES("- Yes");
 
90
INSERT INTO bup_snapshot.t1 VALUES("- Jethro Tull");
 
91
DELETE FROM bup_snapshot.t1 WHERE word LIKE '10%';
 
92
con2: Showing the data after inserts.
 
93
SELECT * FROM bup_snapshot.t1 WHERE word LIKE '-%';
 
94
word
 
95
- Dave Mathews
 
96
- Yes
 
97
- Jethro Tull
 
98
SELECT COUNT(*) FROM bup_snapshot.t1;
 
99
COUNT(*)
 
100
12
 
101
con1: retrieve backup result.
 
102
backup_id
 
103
#
 
104
# Now restore the database and then check to make sure the new rows
 
105
# were not backed up.
 
106
con1: Dropping the database
 
107
DROP TABLE bup_snapshot.t1;
 
108
con1: Restoring the database
 
109
RESTORE FROM "bup_snapshot.bak";
 
110
backup_id
 
111
#
 
112
con1: Showing the data (no new data should be here).
 
113
SELECT * FROM bup_snapshot.t1 WHERE word LIKE '-%';
 
114
word
 
115
SELECT COUNT(*) FROM bup_snapshot.t1;
 
116
COUNT(*)
 
117
10
 
118
SELECT COUNT(*) FROM bup_snapshot.t2;
 
119
COUNT(*)
 
120
5
 
121
SET DEBUG_SYNC= 'reset';
110
122
DROP DATABASE bup_snapshot;