Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 5b40bd0

Browse files
committed
Some new tests for the snapfs. snapfs_switch_to_snapshot_temp_table* tests are incorrect now
1 parent cc65a20 commit 5b40bd0

12 files changed

+605
-6
lines changed
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
Parsed test spec with 1 sessions
2+
3+
starting permutation: s1_mk_sn
4+
step s1_mk_sn:
5+
select 1 as "make_snapshot" from pg_make_snapshot();
6+
select pg_get_snapshot_size( ( select recent_snapshot from pg_control_snapshot() ) );
7+
create table foo as select 'test_data';
8+
select pg_get_snapshot_size( ( select recent_snapshot from pg_control_snapshot() ) ) > 0 as size_not_zero;
9+
10+
make_snapshot
11+
12+
1
13+
pg_get_snapshot_size
14+
15+
0
16+
size_not_zero
17+
18+
t
19+
pg_remove_snapshot
20+
21+

src/test/isolation/expected/snapfs_get_snapshot_timestamp.out

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,3 @@ make_snapshot
1212
timestamp_check
1313

1414
t
15-
pg_remove_snapshot
16-
17-
Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
Parsed test spec with 2 sessions
2+
3+
starting permutation: s1_mk_sn s1_tab_i s1_mk_sn s2_tab_i s1_tab_s s2_tab_s s1_rc_sn s1_tab_s s2_tab_s s1_rc_sn s1_tab_s s2_tab_s s1_tab_i s1_tab_s s2_tab_s s1_rc_sn s1_tab_s s2_tab_s
4+
step s1_mk_sn:
5+
select 1 as "make_snapshot" from pg_make_snapshot();
6+
7+
make_snapshot
8+
9+
1
10+
step s1_tab_i:
11+
insert into foo ( id, name ) values ( 1, 'some_text_session_1' );
12+
13+
step s1_mk_sn:
14+
select 1 as "make_snapshot" from pg_make_snapshot();
15+
16+
make_snapshot
17+
18+
1
19+
step s2_tab_i:
20+
insert into foo ( id, name ) values ( 2, 'some_text_session_2' );
21+
22+
step s1_tab_s:
23+
select * from foo;
24+
25+
id name
26+
27+
1 some_text_session_1
28+
2 some_text_session_2
29+
step s2_tab_s:
30+
select * from foo;
31+
32+
id name
33+
34+
1 some_text_session_1
35+
2 some_text_session_2
36+
step s1_rc_sn:
37+
select pg_recover_to_snapshot( ( select recent_snapshot from pg_control_snapshot() ) );
38+
39+
pg_recover_to_snapshot
40+
41+
42+
step s1_tab_s:
43+
select * from foo;
44+
45+
id name
46+
47+
1 some_text_session_1
48+
step s2_tab_s:
49+
select * from foo;
50+
51+
id name
52+
53+
1 some_text_session_1
54+
step s1_rc_sn:
55+
select pg_recover_to_snapshot( ( select recent_snapshot from pg_control_snapshot() ) );
56+
57+
pg_recover_to_snapshot
58+
59+
60+
step s1_tab_s:
61+
select * from foo;
62+
63+
id name
64+
65+
step s2_tab_s:
66+
select * from foo;
67+
68+
id name
69+
70+
step s1_tab_i:
71+
insert into foo ( id, name ) values ( 1, 'some_text_session_1' );
72+
73+
step s1_tab_s:
74+
select * from foo;
75+
76+
id name
77+
78+
1 some_text_session_1
79+
step s2_tab_s:
80+
select * from foo;
81+
82+
id name
83+
84+
1 some_text_session_1
85+
step s1_rc_sn:
86+
select pg_recover_to_snapshot( ( select recent_snapshot from pg_control_snapshot() ) );
87+
88+
pg_recover_to_snapshot
89+
90+
91+
step s1_tab_s:
92+
select * from foo;
93+
94+
ERROR: relation "foo" does not exist
95+
step s2_tab_s:
96+
select * from foo;
97+
98+
ERROR: relation "foo" does not exist
Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
Parsed test spec with 2 sessions
2+
3+
starting permutation: s1_mk_sn s1_tab_i s2_tab_i s1_mk_sn s2_tab_u s1_tab_s s2_tab_s s1_sb_sn_1 s1_tab_s s2_tab_s s1_sb_sn_2 s2_tab_u s1_tab_s s2_tab_s s1_sb_sn_0 s2_tab_u s1_tab_s s2_tab_s
4+
step s1_mk_sn:
5+
select 1 as "make_snapshot" from pg_make_snapshot();
6+
7+
make_snapshot
8+
9+
1
10+
step s1_tab_i:
11+
insert into foo ( name ) values ( 'some_text_sess_1' );
12+
13+
step s2_tab_i:
14+
insert into foo ( name ) values ( 'some_text_sess_2' );
15+
16+
step s1_mk_sn:
17+
select 1 as "make_snapshot" from pg_make_snapshot();
18+
19+
make_snapshot
20+
21+
1
22+
step s2_tab_u:
23+
update foo set name = name || '_upd_sess_2';
24+
25+
step s1_tab_s:
26+
select * from foo;
27+
28+
id name
29+
30+
1 some_text_sess_1_upd_sess_2
31+
2 some_text_sess_2_upd_sess_2
32+
step s2_tab_s:
33+
select * from foo;
34+
35+
id name
36+
37+
1 some_text_sess_1_upd_sess_2
38+
2 some_text_sess_2_upd_sess_2
39+
step s1_sb_sn_1:
40+
select pg_set_backend_snapshot( ( select recent_snapshot - 1 from pg_control_snapshot() ) );
41+
42+
pg_set_backend_snapshot
43+
44+
45+
step s1_tab_s:
46+
select * from foo;
47+
48+
id name
49+
50+
step s2_tab_s:
51+
select * from foo;
52+
53+
id name
54+
55+
1 some_text_sess_1_upd_sess_2
56+
2 some_text_sess_2_upd_sess_2
57+
step s1_sb_sn_2:
58+
select pg_set_backend_snapshot( ( select recent_snapshot from pg_control_snapshot() ) );
59+
60+
pg_set_backend_snapshot
61+
62+
63+
step s2_tab_u:
64+
update foo set name = name || '_upd_sess_2';
65+
66+
step s1_tab_s:
67+
select * from foo;
68+
69+
id name
70+
71+
1 some_text_sess_1
72+
2 some_text_sess_2
73+
step s2_tab_s:
74+
select * from foo;
75+
76+
id name
77+
78+
1 some_text_sess_1_upd_sess_2_upd_sess_2
79+
2 some_text_sess_2_upd_sess_2_upd_sess_2
80+
step s1_sb_sn_0:
81+
select pg_set_backend_snapshot( 0 );
82+
83+
pg_set_backend_snapshot
84+
85+
86+
step s2_tab_u:
87+
update foo set name = name || '_upd_sess_2';
88+
89+
step s1_tab_s:
90+
select * from foo;
91+
92+
id name
93+
94+
1 some_text_sess_1_upd_sess_2_upd_sess_2_upd_sess_2
95+
2 some_text_sess_2_upd_sess_2_upd_sess_2_upd_sess_2
96+
step s2_tab_s:
97+
select * from foo;
98+
99+
id name
100+
101+
1 some_text_sess_1_upd_sess_2_upd_sess_2_upd_sess_2
102+
2 some_text_sess_2_upd_sess_2_upd_sess_2_upd_sess_2
Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
Parsed test spec with 2 sessions
2+
3+
starting permutation: s1_mk_sn s1_tab_i s2_tab_i s1_mk_sn s2_tab_u s1_tab_s s2_tab_s s1_sw_sn_1 s1_tab_s s2_tab_s s1_sw_sn_2 s2_tab_u s1_tab_s s2_tab_s s1_sw_sn_0 s2_tab_u s1_tab_s s2_tab_s
4+
step s1_mk_sn:
5+
select 1 as "make_snapshot" from pg_make_snapshot();
6+
7+
make_snapshot
8+
9+
1
10+
step s1_tab_i:
11+
insert into foo ( name ) values ( 'some_text_sess_1' );
12+
13+
step s2_tab_i:
14+
insert into foo ( name ) values ( 'some_text_sess_2' );
15+
16+
step s1_mk_sn:
17+
select 1 as "make_snapshot" from pg_make_snapshot();
18+
19+
make_snapshot
20+
21+
1
22+
step s2_tab_u:
23+
update foo set name = name || '_upd_sess_2';
24+
25+
step s1_tab_s:
26+
select * from foo;
27+
28+
id name
29+
30+
1 some_text_sess_1_upd_sess_2
31+
2 some_text_sess_2_upd_sess_2
32+
step s2_tab_s:
33+
select * from foo;
34+
35+
id name
36+
37+
1 some_text_sess_1_upd_sess_2
38+
2 some_text_sess_2_upd_sess_2
39+
step s1_sw_sn_1:
40+
select pg_switch_to_snapshot( ( select recent_snapshot - 1 from pg_control_snapshot() ) );
41+
42+
pg_switch_to_snapshot
43+
44+
45+
step s1_tab_s:
46+
select * from foo;
47+
48+
id name
49+
50+
step s2_tab_s:
51+
select * from foo;
52+
53+
id name
54+
55+
step s1_sw_sn_2:
56+
select pg_switch_to_snapshot( ( select recent_snapshot from pg_control_snapshot() ) );
57+
58+
pg_switch_to_snapshot
59+
60+
61+
step s2_tab_u:
62+
update foo set name = name || '_upd_sess_2';
63+
64+
ERROR: Updates are prohibited in snapshot
65+
step s1_tab_s:
66+
select * from foo;
67+
68+
id name
69+
70+
1 some_text_sess_1
71+
2 some_text_sess_2
72+
step s2_tab_s:
73+
select * from foo;
74+
75+
id name
76+
77+
1 some_text_sess_1
78+
2 some_text_sess_2
79+
step s1_sw_sn_0:
80+
select pg_switch_to_snapshot( 0 );
81+
82+
pg_switch_to_snapshot
83+
84+
85+
step s2_tab_u:
86+
update foo set name = name || '_upd_sess_2';
87+
88+
step s1_tab_s:
89+
select * from foo;
90+
91+
id name
92+
93+
1 some_text_sess_1_upd_sess_2_upd_sess_2
94+
2 some_text_sess_2_upd_sess_2_upd_sess_2
95+
step s2_tab_s:
96+
select * from foo;
97+
98+
id name
99+
100+
1 some_text_sess_1_upd_sess_2_upd_sess_2
101+
2 some_text_sess_2_upd_sess_2_upd_sess_2

0 commit comments

Comments
 (0)