Re: Potential G2-item cycles under serializable isolation - Mailing list pgsql-bugs

From Thomas Munro
Subject Re: Potential G2-item cycles under serializable isolation
Date
Msg-id CA+hUKGKTggArfNk1KpsyZL87qzADyL3DgfGg2JHBWCK4nv-KQw@mail.gmail.com
Whole thread Raw
In response to Re: Potential G2-item cycles under serializable isolation  (Peter Geoghegan <pg@bowt.ie>)
List pgsql-bugs
On Tue, Jun 9, 2020 at 2:12 PM Peter Geoghegan <pg@bowt.ie> wrote:
> Also, is it necessary to have the TransactionIdEquals() tests in both
> HeapCheckForSerializableConflictOut() and
> CheckForSerializableConflictOut()? Apart from anything else, the test
> in HeapCheckForSerializableConflictOut() occurs before we establish
> the topmost XID -- it could be a subxid, in which case the test is
> wrong. Though it doesn't actually matter on account of the redundancy,
> IIUC.

The double-check was present in the original commit dafaa3efb75.  It
seems like a pretty straightforward optimisation:
SubTransGetTopmostTransaction(xid) might cause I/O so it's worth the
check if you can already bail out sooner.  Admittedly the recent
splitting of that function made that a bit less clear.



pgsql-bugs by date:

Previous
From: Peter Geoghegan
Date:
Subject: Re: Potential G2-item cycles under serializable isolation
Next
From: "David G. Johnston"
Date:
Subject: Re: BUG #16486: Prompted password is ignored when password specifiedin connection string