Re: Odd, intermittent failure in contrib/pageinspect

Alvaro Herrera <alvherre@alvh.no-ip.org>

From: Alvaro Herrera <alvherre@alvh.no-ip.org>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Michael Paquier <michael@paquier.xyz>, pgsql-hackers@lists.postgresql.org
Date: 2021-01-18T22:40:05Z
Lists: pgsql-hackers
On 2021-Jan-18, Tom Lane wrote:

> Right.  If that's the explanation, then adding DISABLE_PAGE_SKIPPING
> to the test's VACUUM options should fix it.  However, to believe that
> theory you have to have some reason to think that some other process
> might have the page pinned.  What would that be?  test1 only has one
> small tuple in it, so it doesn't seem credible that autovacuum or
> autoanalyze would have fired on it.

I guess the machine would have to be pretty constrained.  (It takes
almost seven minutes to go through the pg_upgrade test, so it does seems
small.)

> [ thinks for a bit... ]  Does the checkpointer pin pages it's writing
> out?  I guess it'd have to ...

It does, per SyncOneBuffer(), called from BufferSync(), called from
CheckPointBuffers().

-- 
Álvaro Herrera                            39°49'30"S 73°17'W



Commits

  1. Disable vacuum page skipping in selected test cases.