Re: Fix missing EvalPlanQual recheck for TID scans

From: "Sophie Alpert" <pg(at)sophiebits(dot)com>
To: "David Rowley" <dgrowleyml(at)gmail(dot)com>
Cc: pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: Fix missing EvalPlanQual recheck for TID scans
Date: 2025-09-15 17:41:27
Message-ID: 16708588-0724-4d5e-803f-467797c2cb32@app.fastmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Mon, Sep 15, 2025 at 4:23 AM, David Rowley <dgrowleyml(at)gmail(dot)com> wrote:
> For the v2 patch, I've hacked on that a bit and stripped out the
> trss_boundsInitialized stuff and just make it so we recalculate the
> TID List/Range on every recheck. I also added another isolation test
> permutation to have s1 rollback and ensure that s2 updates the ctid =
> '(0,1)' tuple.

Thanks, this seems sensible given the reality that rescan happens once per tuple. The `if (node->tss_TidList == NULL)` check you kept from me seems likewise pointless in v3-0001 but not particularly intrusive (though of course you use it in v3-0002).

Otherwise v3-0001 lgtm. (I also took a look at v3-0002 and don't see any immediate issues, though neither would I really consider myself qualified to review it.)

Sophie

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Alexander Korotkov 2025-09-15 17:47:15 Re: Add SPLIT PARTITION/MERGE PARTITIONS commands
Previous Message Masahiko Sawada 2025-09-15 17:40:40 Re: LISTEN/NOTIFY bug: VACUUM sets frozenxid past a xid in async queue