Re: Call lazy_check_wraparound_failsafe earlier for parallel vacuum - Mailing list pgsql-hackers

From Peter Geoghegan
Subject Re: Call lazy_check_wraparound_failsafe earlier for parallel vacuum
Date
Msg-id CAH2-Wzm=YnEXTBtdC5+YcWOdHVVXvkoUNZZk9163dCjXcET66A@mail.gmail.com
Whole thread Raw
In response to Re: Call lazy_check_wraparound_failsafe earlier for parallel vacuum  ("Imseih (AWS), Sami" <simseih@amazon.com>)
Responses Re: Call lazy_check_wraparound_failsafe earlier for parallel vacuum  ("Imseih (AWS), Sami" <simseih@amazon.com>)
List pgsql-hackers
On Tue, Dec 20, 2022 at 9:44 AM Imseih (AWS), Sami <simseih@amazon.com> wrote:
> Attached is a patch to check scanned pages rather
> than blockno.

Pushed, thanks!

I adjusted the FAILSAFE_EVERY_PAGES comments, which now point out that
FAILSAFE_EVERY_PAGES is a power-of-two. The implication is that the
compiler is all but guaranteed to be able to reduce the modulo
division into a shift in the lazy_scan_heap loop, at the point of the
failsafe check. I doubt that it would really matter if the compiler
had to generate a DIV instruction, but it seems like a good idea to
avoid it on general principle, at least in performance sensitive code.

--
Peter Geoghegan



pgsql-hackers by date:

Previous
From: Nikita Malakhov
Date:
Subject: Re: [PATCH] Infinite loop while acquiring new TOAST Oid
Next
From: Nikita Malakhov
Date:
Subject: Re: ARRNELEMS Out-of-bounds possible errors