Re: Removing more vacuumlazy.c special cases, relfrozenxid optimizations

From: Peter Geoghegan <pg(at)bowt(dot)ie>
To: Andres Freund <andres(at)anarazel(dot)de>
Cc: Justin Pryzby <pryzby(at)telsasoft(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Thomas Munro <thomas(dot)munro(at)gmail(dot)com>, Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: Removing more vacuumlazy.c special cases, relfrozenxid optimizations
Date: 2022-04-01 17:54:14
Message-ID: CAH2-WzkwUx++AcDByZV+TvoZddbWfvSEVGhrc4roQVGVqdHJ=w@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Mar 31, 2022 at 11:19 AM Peter Geoghegan <pg(at)bowt(dot)ie> wrote:
> The assert is "Assert(diff > 0)", and not "Assert(diff >= 0)".

Attached is v15. I plan to commit the first two patches (the most
substantial two patches by far) in the next couple of days, barring
objections.

v15 removes this "Assert(diff > 0)" assertion from 0001. It's not
adding any value, now that the underlying issue that it accidentally
brought to light is well understood (there are still more robust
assertions to the relfrozenxid/relminmxid invariants). "Assert(diff >
0)" is liable to fail until the underlying bug on HEAD is fixed, which
can be treated as separate work.

I also refined the WARNING patch in v15. It now actually issues
WARNINGs (rather than PANICs, which were just a temporary debugging
measure in v14). Also fixed a compiler warning in this patch, based on
a complaint from CFBot's CompilerWarnings task. I can delay commiting
this WARNING patch until right before feature freeze. Seems best to
give others more opportunity for comments.

--
Peter Geoghegan

Attachment Content-Type Size
v15-0003-Have-VACUUM-warn-on-relfrozenxid-from-the-future.patch application/octet-stream 4.0 KB
v15-0004-vacuumlazy.c-Move-resource-allocation-to-heap_va.patch application/octet-stream 5.3 KB
v15-0002-Generalize-how-VACUUM-skips-all-frozen-pages.patch application/octet-stream 19.5 KB
v15-0001-Set-relfrozenxid-to-oldest-extant-XID-seen-by-VA.patch application/octet-stream 61.1 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2022-04-01 18:04:08 Re: should vacuum's first heap pass be read-only?
Previous Message Nathan Bossart 2022-04-01 17:44:09 Re: Can we automatically add elapsed times to tap test log?