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

Commit f5d3599

Browse files
committed
role test passed
1 parent 7bdfea3 commit f5d3599

File tree

2 files changed

+331
-16
lines changed

2 files changed

+331
-16
lines changed

src/test/isolation/expected/snapfs_role.out

Lines changed: 319 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Parsed test spec with 3 sessions
22

3-
starting permutation: s3_mk_sn s1_cr s3_mk_sn s1_check s1_ar s3_mk_sn s1_dr s1_check s2_check s3_sw_1 s1_check s2_check s3_sw_2 s1_check s2_check s3_sw_3 s1_check s2_check s3_sw_0 s1_check s2_check s3_teardown
3+
starting permutation: s3_mk_sn s1_cr s3_mk_sn s1_check s1_ar s3_mk_sn s1_dr s1_check s2_check s3_sw_1 s1_check s2_check s3_sw_2 s1_check s2_check s3_sw_3 s1_check s2_check s3_sw_0 s1_check s2_check
44
step s3_mk_sn:
55
select 1 from pg_make_snapshot();
66

@@ -113,18 +113,232 @@ step s2_check:
113113

114114
rolname rolcanlogin
115115

116-
step s3_teardown:
117-
select pg_switch_to_snapshot( 0 );
118-
select pg_remove_snapshot( ( select recent_snapshot from pg_control_snapshot() ) );
119116

120-
pg_switch_to_snapshot
117+
starting permutation: s3_mk_sn s1_cr s3_mk_sn s1_check s1_ar s3_mk_sn s1_dr s1_check s2_check s1_sb_1 s1_check s2_check s1_sb_2 s1_check s2_check s1_sb_3 s1_check s2_check s1_sb_0 s1_check s2_check
118+
step s3_mk_sn:
119+
select 1 from pg_make_snapshot();
120+
121+
?column?
122+
123+
1
124+
step s1_cr:
125+
create role regressuser1 nologin;
126+
127+
step s3_mk_sn:
128+
select 1 from pg_make_snapshot();
129+
130+
?column?
131+
132+
1
133+
step s1_check:
134+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
135+
136+
rolname rolcanlogin
137+
138+
regressuser1 f
139+
step s1_ar:
140+
alter role regressuser1 rename to regressuser2;
141+
alter role regressuser2 login;
142+
143+
step s3_mk_sn:
144+
select 1 from pg_make_snapshot();
145+
146+
?column?
147+
148+
1
149+
step s1_dr:
150+
drop role regressuser2;
151+
152+
step s1_check:
153+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
154+
155+
rolname rolcanlogin
156+
157+
step s2_check:
158+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
159+
160+
rolname rolcanlogin
161+
162+
step s1_sb_1:
163+
select pg_set_backend_snapshot( ( select recent_snapshot - 2 from pg_control_snapshot() ) );
164+
165+
pg_set_backend_snapshot
166+
167+
168+
step s1_check:
169+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
170+
171+
rolname rolcanlogin
172+
173+
step s2_check:
174+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
175+
176+
rolname rolcanlogin
177+
178+
step s1_sb_2:
179+
select pg_set_backend_snapshot( ( select recent_snapshot - 1 from pg_control_snapshot() ) );
180+
181+
pg_set_backend_snapshot
182+
183+
184+
step s1_check:
185+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
186+
187+
rolname rolcanlogin
188+
189+
regressuser1 f
190+
step s2_check:
191+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
192+
193+
rolname rolcanlogin
194+
195+
step s1_sb_3:
196+
select pg_set_backend_snapshot( ( select recent_snapshot from pg_control_snapshot() ) );
197+
198+
pg_set_backend_snapshot
199+
200+
201+
step s1_check:
202+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
203+
204+
rolname rolcanlogin
205+
206+
regressuser2 t
207+
step s2_check:
208+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
209+
210+
rolname rolcanlogin
211+
212+
step s1_sb_0:
213+
select pg_set_backend_snapshot( 0 );
214+
215+
pg_set_backend_snapshot
216+
217+
218+
step s1_check:
219+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
220+
221+
rolname rolcanlogin
222+
223+
step s2_check:
224+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
225+
226+
rolname rolcanlogin
227+
228+
229+
starting permutation: s3_mk_sn s1_cr s3_mk_sn s1_check s1_ar s3_mk_sn s1_dr s1_check s2_check s2_sb_1 s1_check s2_check s2_sb_2 s1_check s2_check s2_sb_3 s1_check s2_check s2_sb_0 s1_check s2_check
230+
step s3_mk_sn:
231+
select 1 from pg_make_snapshot();
232+
233+
?column?
234+
235+
1
236+
step s1_cr:
237+
create role regressuser1 nologin;
238+
239+
step s3_mk_sn:
240+
select 1 from pg_make_snapshot();
241+
242+
?column?
243+
244+
1
245+
step s1_check:
246+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
247+
248+
rolname rolcanlogin
249+
250+
regressuser1 f
251+
step s1_ar:
252+
alter role regressuser1 rename to regressuser2;
253+
alter role regressuser2 login;
254+
255+
step s3_mk_sn:
256+
select 1 from pg_make_snapshot();
257+
258+
?column?
259+
260+
1
261+
step s1_dr:
262+
drop role regressuser2;
263+
264+
step s1_check:
265+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
266+
267+
rolname rolcanlogin
268+
269+
step s2_check:
270+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
271+
272+
rolname rolcanlogin
273+
274+
step s2_sb_1:
275+
select pg_set_backend_snapshot( ( select recent_snapshot - 2 from pg_control_snapshot() ) );
276+
277+
pg_set_backend_snapshot
121278

122279

123-
pg_remove_snapshot
280+
step s1_check:
281+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
282+
283+
rolname rolcanlogin
284+
285+
step s2_check:
286+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
287+
288+
rolname rolcanlogin
289+
290+
step s2_sb_2:
291+
select pg_set_backend_snapshot( ( select recent_snapshot - 1 from pg_control_snapshot() ) );
292+
293+
pg_set_backend_snapshot
124294

125295

296+
step s1_check:
297+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
298+
299+
rolname rolcanlogin
300+
301+
step s2_check:
302+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
303+
304+
rolname rolcanlogin
305+
306+
regressuser1 f
307+
step s2_sb_3:
308+
select pg_set_backend_snapshot( ( select recent_snapshot from pg_control_snapshot() ) );
309+
310+
pg_set_backend_snapshot
311+
312+
313+
step s1_check:
314+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
315+
316+
rolname rolcanlogin
317+
318+
step s2_check:
319+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
320+
321+
rolname rolcanlogin
322+
323+
regressuser2 t
324+
step s2_sb_0:
325+
select pg_set_backend_snapshot( 0 );
326+
327+
pg_set_backend_snapshot
126328

127-
starting permutation: s3_mk_sn s1_cr s3_mk_sn s1_check s1_ar s3_mk_sn s1_dr s1_check s2_check s3_rc_sn_2 s1_check s2_check s3_rc_sn
329+
330+
step s1_check:
331+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
332+
333+
rolname rolcanlogin
334+
335+
step s2_check:
336+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
337+
338+
rolname rolcanlogin
339+
340+
341+
starting permutation: s3_mk_sn s1_cr s3_mk_sn s1_check s1_ar s3_mk_sn s1_dr s1_check s2_check s3_rc_sn_2 s1_check s2_check
128342
step s3_mk_sn:
129343
select 1 from pg_make_snapshot();
130344

@@ -175,6 +389,88 @@ step s3_rc_sn_2:
175389
pg_recover_to_snapshot
176390

177391

392+
step s1_check:
393+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
394+
395+
rolname rolcanlogin
396+
397+
regressuser1 f
398+
step s2_check:
399+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
400+
401+
rolname rolcanlogin
402+
403+
regressuser1 f
404+
405+
starting permutation: s3_mk_sn s1_cr s3_mk_sn s1_check s1_ar s3_mk_sn s1_dr s1_check s2_check s3_rc_sn s1_check s2_check s3_rc_sn s1_check s2_check s3_rc_sn s1_check s2_check s3_mk_sn
406+
step s3_mk_sn:
407+
select 1 from pg_make_snapshot();
408+
409+
?column?
410+
411+
1
412+
step s1_cr:
413+
create role regressuser1 nologin;
414+
415+
step s3_mk_sn:
416+
select 1 from pg_make_snapshot();
417+
418+
?column?
419+
420+
1
421+
step s1_check:
422+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
423+
424+
rolname rolcanlogin
425+
426+
regressuser1 f
427+
step s1_ar:
428+
alter role regressuser1 rename to regressuser2;
429+
alter role regressuser2 login;
430+
431+
step s3_mk_sn:
432+
select 1 from pg_make_snapshot();
433+
434+
?column?
435+
436+
1
437+
step s1_dr:
438+
drop role regressuser2;
439+
440+
step s1_check:
441+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
442+
443+
rolname rolcanlogin
444+
445+
step s2_check:
446+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
447+
448+
rolname rolcanlogin
449+
450+
step s3_rc_sn:
451+
select pg_recover_to_snapshot( ( select recent_snapshot from pg_control_snapshot() ) );
452+
453+
pg_recover_to_snapshot
454+
455+
456+
step s1_check:
457+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
458+
459+
rolname rolcanlogin
460+
461+
regressuser2 t
462+
step s2_check:
463+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
464+
465+
rolname rolcanlogin
466+
467+
regressuser2 t
468+
step s3_rc_sn:
469+
select pg_recover_to_snapshot( ( select recent_snapshot from pg_control_snapshot() ) );
470+
471+
pg_recover_to_snapshot
472+
473+
178474
step s1_check:
179475
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
180476

@@ -193,3 +489,19 @@ step s3_rc_sn:
193489
pg_recover_to_snapshot
194490

195491

492+
step s1_check:
493+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
494+
495+
rolname rolcanlogin
496+
497+
step s2_check:
498+
select rolname, rolcanlogin from pg_roles where rolname in ( 'regressuser1', 'regressuser2' );
499+
500+
rolname rolcanlogin
501+
502+
step s3_mk_sn:
503+
select 1 from pg_make_snapshot();
504+
505+
?column?
506+
507+
1

src/test/isolation/specs/snapfs_role.spec

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,13 @@
11
# Role and permissions checks
22
# We are using three backends: read-write, read, snapshot.
33

4+
teardown {
5+
select pg_switch_to_snapshot( 0 );
6+
select pg_remove_snapshot( ( select recent_snapshot from pg_control_snapshot() ) );
7+
DROP ROLE IF EXISTS regressuser1;
8+
DROP ROLE IF EXISTS regressuser2;
9+
}
10+
411
session "s1"
512
step "s1_cr" {
613
create role regressuser1 nologin;
@@ -70,13 +77,9 @@ step "s3_rc_sn_1" {
7077
step "s3_rc_sn_2" {
7178
select pg_recover_to_snapshot( ( select recent_snapshot - 1 from pg_control_snapshot() ) );
7279
}
73-
step "s3_teardown" {
74-
select pg_switch_to_snapshot( 0 );
75-
select pg_remove_snapshot( ( select recent_snapshot from pg_control_snapshot() ) );
76-
}
7780

78-
permutation "s3_mk_sn" "s1_cr" "s3_mk_sn" "s1_check" "s1_ar" "s3_mk_sn" "s1_dr" "s1_check" "s2_check" "s3_sw_1" "s1_check" "s2_check" "s3_sw_2" "s1_check" "s2_check" "s3_sw_3" "s1_check" "s2_check" "s3_sw_0" "s1_check" "s2_check" "s3_teardown"
79-
#permutation "s3_mk_sn" "s1_cr" "s3_mk_sn" "s1_check" "s1_ar" "s3_mk_sn" "s1_dr" "s1_check" "s2_check" "s1_sb_1" "s1_check" "s2_check" "s1_sb_2" "s1_check" "s2_check" "s1_sb_3" "s1_check" "s2_check" "s1_sb_0" "s1_check" "s2_check"
80-
#permutation "s3_mk_sn" "s1_cr" "s3_mk_sn" "s1_check" "s1_ar" "s3_mk_sn" "s1_dr" "s1_check" "s2_check" "s2_sb_1" "s1_check" "s2_check" "s2_sb_2" "s1_check" "s2_check" "s2_sb_3" "s1_check" "s2_check" "s2_sb_0" "s1_check" "s2_check"
81-
permutation "s3_mk_sn" "s1_cr" "s3_mk_sn" "s1_check" "s1_ar" "s3_mk_sn" "s1_dr" "s1_check" "s2_check" "s3_rc_sn_2" "s1_check" "s2_check" "s3_rc_sn"
82-
#permutation "s3_mk_sn" "s1_cr" "s3_mk_sn" "s1_check" "s1_ar" "s3_mk_sn" "s1_dr" "s1_check" "s2_check" "s3_rc_sn" "s1_check" "s2_check" "s3_rc_sn" "s1_check" "s2_check" "s3_rc_sn" "s1_check" "s2_check" "s3_mk_sn"
81+
permutation "s3_mk_sn" "s1_cr" "s3_mk_sn" "s1_check" "s1_ar" "s3_mk_sn" "s1_dr" "s1_check" "s2_check" "s3_sw_1" "s1_check" "s2_check" "s3_sw_2" "s1_check" "s2_check" "s3_sw_3" "s1_check" "s2_check" "s3_sw_0" "s1_check" "s2_check"
82+
permutation "s3_mk_sn" "s1_cr" "s3_mk_sn" "s1_check" "s1_ar" "s3_mk_sn" "s1_dr" "s1_check" "s2_check" "s1_sb_1" "s1_check" "s2_check" "s1_sb_2" "s1_check" "s2_check" "s1_sb_3" "s1_check" "s2_check" "s1_sb_0" "s1_check" "s2_check"
83+
permutation "s3_mk_sn" "s1_cr" "s3_mk_sn" "s1_check" "s1_ar" "s3_mk_sn" "s1_dr" "s1_check" "s2_check" "s2_sb_1" "s1_check" "s2_check" "s2_sb_2" "s1_check" "s2_check" "s2_sb_3" "s1_check" "s2_check" "s2_sb_0" "s1_check" "s2_check"
84+
permutation "s3_mk_sn" "s1_cr" "s3_mk_sn" "s1_check" "s1_ar" "s3_mk_sn" "s1_dr" "s1_check" "s2_check" "s3_rc_sn_2" "s1_check" "s2_check"
85+
permutation "s3_mk_sn" "s1_cr" "s3_mk_sn" "s1_check" "s1_ar" "s3_mk_sn" "s1_dr" "s1_check" "s2_check" "s3_rc_sn" "s1_check" "s2_check" "s3_rc_sn" "s1_check" "s2_check" "s3_rc_sn" "s1_check" "s2_check" "s3_mk_sn"

0 commit comments

Comments
 (0)