mirror of
https://github.com/postgres/postgres.git
synced 2025-06-08 22:02:03 +03:00
There's a small window wherein a transaction is committed but not yet
on the finished list, and we shouldn't flag it as a potential conflict if so. We can also skip adding a doomed transaction to the list of possible conflicts because we know it won't commit. Dan Ports and Kevin Grittner.
This commit is contained in:
parent
fdf8f751e7
commit
9b47c67ccd
@ -1677,8 +1677,9 @@ RegisterSerializableTransactionInt(Snapshot snapshot)
|
|||||||
othersxact != NULL;
|
othersxact != NULL;
|
||||||
othersxact = NextPredXact(othersxact))
|
othersxact = NextPredXact(othersxact))
|
||||||
{
|
{
|
||||||
if (!SxactIsOnFinishedList(othersxact) &&
|
if (!SxactIsCommitted(othersxact)
|
||||||
!SxactIsReadOnly(othersxact))
|
&& !SxactIsDoomed(othersxact)
|
||||||
|
&& !SxactIsReadOnly(othersxact))
|
||||||
{
|
{
|
||||||
SetPossibleUnsafeConflict(sxact, othersxact);
|
SetPossibleUnsafeConflict(sxact, othersxact);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user