Fix missing EvalPlanQual recheck for TID scans
David G. Johnston <david.g.johnston@gmail.com>
From: "David G. Johnston" <david.g.johnston@gmail.com>
To: Chao Li <li.evan.chao@gmail.com>
Cc: David Rowley <dgrowleyml@gmail.com>, Sophie Alpert <pg@sophiebits.com>, "pgsql-hackers@lists.postgresql.org" <pgsql-hackers@lists.postgresql.org>
Date: 2025-09-15T06:04:52Z
Lists: pgsql-hackers
On Sunday, September 14, 2025, Chao Li <li.evan.chao@gmail.com> wrote: > > > It says that UPDATE will only find target rows that were committed as of > the command start time. I think the statement implies that an “update” > statement will never update a “future” tuple. > It will indeed see a future physical tuple so long as the logical row that said tuple refers to already was committed, and it found the corresponding past physical tuple. Admittedly, I’m unclear on how exactly the system communicates/understands that the past and future physical tuples refer to same logical row reliably. In the docs, one is left to assume that feature just works. David J.
Commits
-
Add missing EPQ recheck for TID Range Scan
- f78a69034740 14.20 landed
- f00ad440a5b6 15.15 landed
- ba0203880a8f 16.11 landed
- 0fb06e893331 17.7 landed
- 78e6047dcea5 18.0 landed
- ac06ea8f7b6c 19 (unreleased) landed
-
Add missing EPQ recheck for TID Scan
- 940f3cd5df57 13.23 landed
- 2eb7ea97d8af 14.20 landed
- 005770203889 15.15 landed
- d6539f88b7c5 16.11 landed
- 3d939a9b1c72 17.7 landed
- bae6c74ba4e4 18.0 landed
- dee21ea6d617 19 (unreleased) landed
-
Repair problems with EvalPlanQual where target table is scanned as
- 6799a6ca21e5 7.2.1 cited
-
Tid access method feature from Hiroshi Inoue, Inoue@tpf.co.jp
- 6f9ff92cc0ff 7.1.1 cited