Re: The documentation for READ COMMITTED may be incomplete or wrong
Nathan Bossart <nathandbossart@gmail.com>
From: Nathan Bossart <nathandbossart@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Aleksander Alekseev <aleksander@timescale.com>, Amit Langote <amitlangote09@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2023-05-18T19:51:23Z
Lists: pgsql-hackers
On Thu, May 18, 2023 at 11:22:54AM -0400, Tom Lane wrote: > Ugh. Bisecting says it broke at > > 86dc90056dfdbd9d1b891718d2e5614e3e432f35 is the first bad commit > commit 86dc90056dfdbd9d1b891718d2e5614e3e432f35 > Author: Tom Lane <tgl@sss.pgh.pa.us> > Date: Wed Mar 31 11:52:34 2021 -0400 > > Rework planning and execution of UPDATE and DELETE. > > which was absolutely not supposed to be breaking any concurrent-execution > guarantees. I wonder what we got wrong. With the reproduction steps listed upthread, I see that XMAX for both tuples is set to the deleting transaction, but the one in inh_child_2 has two additional infomask flags: HEAP_XMAX_EXCL_LOCK and HEAP_XMAX_LOCK_ONLY. If I add a third table (i.e., inh_child_3), XMAX for all three tuples is set to the deleting transaction, and only the one in inh_child_3 has the lock bits set. Also, in the three-table case, the DELETE statement reports "DELETE 2". -- Nathan Bossart Amazon Web Services: https://aws.amazon.com
Commits
-
Fix misbehavior of EvalPlanQual checks with multiple result relations.
- 70b42f279029 16.0 landed
- ff77d8687fa3 12.16 landed
- f8320cc72ddb 14.9 landed
- 956c6256a98e 13.12 landed
- 4729d1e8aab9 15.4 landed
-
Rework planning and execution of UPDATE and DELETE.
- 86dc90056dfd 14.0 cited