@@ -34,10 +34,8 @@ def test_backup_via_unprivileged_user(self):
34
34
node = self .make_simple_node (
35
35
base_dir = os .path .join (module_name , fname , 'node' ),
36
36
set_replication = True ,
37
- initdb_params = ['--data-checksums' ],
38
- pg_options = {
39
- 'max_wal_senders' : '2' }
40
- )
37
+ initdb_params = ['--data-checksums' ])
38
+
41
39
backup_dir = os .path .join (self .tmp_path , module_name , fname , 'backup' )
42
40
self .init_pb (backup_dir )
43
41
self .add_instance (backup_dir , 'node' , node )
@@ -64,7 +62,15 @@ def test_backup_via_unprivileged_user(self):
64
62
"GRANT EXECUTE ON FUNCTION"
65
63
" pg_start_backup(text, boolean, boolean) TO backup;" )
66
64
67
- time .sleep (1 )
65
+ if self .get_version (node ) < 100000 :
66
+ node .safe_psql (
67
+ 'postgres' ,
68
+ "GRANT EXECUTE ON FUNCTION pg_catalog.pg_switch_xlog() TO backup" )
69
+ else :
70
+ node .safe_psql (
71
+ 'postgres' ,
72
+ "GRANT EXECUTE ON FUNCTION pg_catalog.pg_switch_wal() TO backup" )
73
+
68
74
try :
69
75
self .backup_node (
70
76
backup_dir , 'node' , node , options = ['-U' , 'backup' ])
@@ -84,8 +90,6 @@ def test_backup_via_unprivileged_user(self):
84
90
"GRANT EXECUTE ON FUNCTION"
85
91
" pg_create_restore_point(text) TO backup;" )
86
92
87
- time .sleep (1 )
88
-
89
93
try :
90
94
self .backup_node (
91
95
backup_dir , 'node' , node , options = ['-U' , 'backup' ])
@@ -129,50 +133,18 @@ def test_backup_via_unprivileged_user(self):
129
133
node .stop ()
130
134
node .slow_start ()
131
135
132
- try :
133
- self .backup_node (
134
- backup_dir , 'node' , node , options = ['-U' , 'backup' ])
135
- self .assertEqual (
136
- 1 , 0 ,
137
- "Expecting Error due to missing grant on clearing ptrack_files." )
138
- except ProbackupException as e :
139
- self .assertIn (
140
- "ERROR: must be superuser or replication role to clear ptrack files\n "
141
- "query was: SELECT pg_catalog.pg_ptrack_clear()" , e .message ,
142
- '\n Unexpected Error Message: {0}\n CMD: {1}' .format (
143
- repr (e .message ), self .cmd ))
144
-
145
- time .sleep (1 )
146
-
147
- try :
148
- self .backup_node (
149
- backup_dir , 'node' , node ,
150
- backup_type = 'ptrack' , options = ['-U' , 'backup' ])
151
- self .assertEqual (
152
- 1 , 0 ,
153
- "Expecting Error due to missing grant on clearing ptrack_files." )
154
- except ProbackupException as e :
155
- self .assertIn (
156
- "ERROR: must be superuser or replication role read ptrack files\n "
157
- "query was: select pg_catalog.pg_ptrack_control_lsn()" , e .message ,
158
- '\n Unexpected Error Message: {0}\n CMD: {1}' .format (
159
- repr (e .message ), self .cmd ))
160
-
161
136
node .safe_psql (
162
137
"postgres" ,
163
138
"ALTER ROLE backup REPLICATION" )
164
139
165
- time .sleep (1 )
166
-
167
140
# FULL
168
141
self .backup_node (
169
- backup_dir , 'node' , node ,
170
- options = ['-U' , 'backup' ])
142
+ backup_dir , 'node' , node , options = ['-U' , 'backup' ])
171
143
172
144
# PTRACK
173
- self .backup_node (
174
- backup_dir , 'node' , node ,
175
- backup_type = 'ptrack' , options = ['-U' , 'backup' ])
145
+ # self.backup_node(
146
+ # backup_dir, 'node', node,
147
+ # backup_type='ptrack', options=['-U', 'backup'])
176
148
177
149
# Clean after yourself
178
150
self .del_test_dir (module_name , fname )
0 commit comments