Re: All-visible pages with valid prune xid are confusing

Melanie Plageman <melanieplageman@gmail.com>

From: Melanie Plageman <melanieplageman@gmail.com>
To: Heikki Linnakangas <hlinnaka@iki.fi>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>, Andres Freund <andres@anarazel.de>
Date: 2025-12-02T18:23:57Z
Lists: pgsql-hackers
On Tue, Dec 2, 2025 at 12:49 PM Heikki Linnakangas <hlinnaka@iki.fi> wrote:
>
> Hmm. If the page has no prunable tuples left, it makes sense to set
> pd_prune_xid to InvalidTransactionId to avoid the useless round of
> pruning. In other cases, it would make sense to set it to some XID so
> that it gets pruned later. But a standby will only start pruning if it's
> later promoted to become a primary. At that point, all currently running
> transactions will be finished (except for prepared transactions).

What about on-access pruning during SELECT queries on a hot standby?

- Melanie