Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nelsO-00026u-MN for pgsql-hackers@arkaria.postgresql.org; Wed, 13 Apr 2022 22:54:16 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nelsM-0005YH-D1 for pgsql-hackers@arkaria.postgresql.org; Wed, 13 Apr 2022 22:54:14 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nelsM-0005Y8-2k for pgsql-hackers@lists.postgresql.org; Wed, 13 Apr 2022 22:54:14 +0000 Received: from sss.pgh.pa.us ([66.207.139.130]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nelsK-0005Um-26 for pgsql-hackers@lists.postgresql.org; Wed, 13 Apr 2022 22:54:13 +0000 Received: from sss1.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.pgh.pa.us (8.15.2/8.15.2) with ESMTP id 23DMs63K1349965; Wed, 13 Apr 2022 18:54:06 -0400 From: Tom Lane To: Peter Geoghegan cc: PostgreSQL Hackers , Andres Freund Subject: Re: Intermittent buildfarm failures on wrasse In-reply-to: References: <1346227.1649887693@sss.pgh.pa.us> Comments: In-reply-to Peter Geoghegan message dated "Wed, 13 Apr 2022 15:20:30 -0700" MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <1349963.1649890446.1@sss.pgh.pa.us> Date: Wed, 13 Apr 2022 18:54:06 -0400 Message-ID: <1349964.1649890446@sss.pgh.pa.us> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Peter Geoghegan writes: > On Wed, Apr 13, 2022 at 3:08 PM Tom Lane wrote: >> I'm tempted to add something like >> SELECT relallvisible = relpages FROM pg_class WHERE relname = 'tenk1'; >> so that we can confirm or refute the theory that relallvisible is >> the driving factor. > It would be fairly straightforward to commit a temporary debugging > patch that has the autovacuum logging stuff report directly on how > VACUUM set new_rel_allvisible in pg_class. We should probably be doing > that already, just because it's useful information that is already > close at hand. Doesn't look like wrasse has autovacuum logging enabled, though. After a bit more navel-contemplation I see a way that the pgstats work could have changed timing in this area. We used to have a rate limit on how often stats reports would be sent to the collector, which'd ensure half a second or so delay before a transaction's change counts became visible to the autovac daemon. I've not looked at the new code, but I'm betting that that's gone and the autovac launcher might start a worker nearly immediately after some foreground process finishes inserting some rows. So that could result in autovac activity occurring concurrently with test_setup where it didn't before. As to what to do about it ... maybe apply the FREEZE and DISABLE_PAGE_SKIPPING options in test_setup's vacuums? It seems like DISABLE_PAGE_SKIPPING is necessary but perhaps not sufficient. regards, tom lane