Re: pgsql: Prevent instability in contrib/pageinspect's regression test.
Greg Stark <stark@mit.edu>
From: Greg Stark <stark@mit.edu>
To: Andres Freund <andres@anarazel.de>
Cc: Robert Haas <robertmhaas@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>, pgsql-hackers@lists.postgresql.org
Date: 2022-11-23T16:58:41Z
Lists: pgsql-hackers
On Mon, 21 Nov 2022 at 15:01, Andres Freund <andres@anarazel.de> wrote: > > It's somewhat sad to add this restriction - I've used get_raw_page() (+ > other functions) to scan a whole database for a bug. IIRC that actually > did end up using parallelism, albeit likely not very efficiently. > > Don't really have a better idea though. Given how specific the use case is here a simple solution would be to just have a dedicated get_raw_temp_page() and restrict get_raw_page() to persistent tables. I suppose slightly gilding it would be to make a get_raw_page_temp() and get_raw_page_persistent() and then you could have get_raw_page() call the appropropriate one. They would be parallel restricted except for get_raw_page_persistent() and if you explicitly called it you could get parallel scans otherwise you wouldn't. -- greg
Commits
-
Mark pageinspect's disk-accessing functions as parallel restricted.
- b8988cf1d0a7 15.2 landed
- aeaaf520f409 16.0 landed
-
Prevent instability in contrib/pageinspect's regression test.
- e2933a6e1179 16.0 cited
-
Set cutoff xmin more aggressively when vacuuming a temporary table.
- a7212be8b9e0 14.0 cited