@@ -210,46 +210,36 @@ def test_ptrack_unprivileged(self):
210210 "GRANT EXECUTE ON FUNCTION pg_catalog.txid_snapshot_xmax(txid_snapshot) TO backup;"
211211 )
212212
213- if self .ptrack :
214- fnames = []
215- if node .major_version < 12 :
216- fnames += [
217- 'pg_catalog.oideq(oid, oid)' ,
218- 'pg_catalog.ptrack_version()' ,
219- 'pg_catalog.pg_ptrack_clear()' ,
220- 'pg_catalog.pg_ptrack_control_lsn()' ,
221- 'pg_catalog.pg_ptrack_get_and_clear_db(oid, oid)' ,
222- 'pg_catalog.pg_ptrack_get_and_clear(oid, oid)' ,
223- 'pg_catalog.pg_ptrack_get_block_2(oid, oid, oid, bigint)'
224- ]
225- else :
226- # TODO why backup works without these grants ?
227- # fnames += [
228- # 'pg_ptrack_get_pagemapset(pg_lsn)',
229- # 'pg_ptrack_control_lsn()',
230- # 'pg_ptrack_get_block(oid, oid, oid, bigint)'
231- # ]
232-
233- node .safe_psql (
234- "backupdb" ,
235- "CREATE SCHEMA ptrack" )
236-
237- node .safe_psql (
238- "backupdb" ,
239- "CREATE EXTENSION ptrack WITH SCHEMA ptrack" )
240-
241- node .safe_psql (
242- "backupdb" ,
243- "GRANT USAGE ON SCHEMA ptrack TO backup" )
213+ if node .major_version < 12 :
214+ fnames = [
215+ 'pg_catalog.oideq(oid, oid)' ,
216+ 'pg_catalog.ptrack_version()' ,
217+ 'pg_catalog.pg_ptrack_clear()' ,
218+ 'pg_catalog.pg_ptrack_control_lsn()' ,
219+ 'pg_catalog.pg_ptrack_get_and_clear_db(oid, oid)' ,
220+ 'pg_catalog.pg_ptrack_get_and_clear(oid, oid)' ,
221+ 'pg_catalog.pg_ptrack_get_block_2(oid, oid, oid, bigint)'
222+ ]
244223
245224 for fname in fnames :
246225 node .safe_psql (
247226 "backupdb" ,
248227 "GRANT EXECUTE ON FUNCTION {0} TO backup" .format (fname ))
249228
229+ else :
230+ node .safe_psql (
231+ "backupdb" ,
232+ "CREATE SCHEMA ptrack" )
250233 node .safe_psql (
251234 "backupdb" ,
252- "GRANT SELECT ON TABLE pg_catalog.pg_extension TO backup" )
235+ "CREATE EXTENSION ptrack WITH SCHEMA ptrack" )
236+ node .safe_psql (
237+ "backupdb" ,
238+ "GRANT USAGE ON SCHEMA ptrack TO backup" )
239+
240+ node .safe_psql (
241+ "backupdb" ,
242+ "GRANT SELECT ON TABLE pg_catalog.pg_extension TO backup" )
253243
254244 if ProbackupTest .enterprise :
255245 node .safe_psql (
0 commit comments