Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit bdaabb9

Browse files
committed
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.
1 parent 406d618 commit bdaabb9

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

src/backend/storage/lmgr/predicate.c

+3-2
Original file line numberDiff line numberDiff line change
@@ -1677,8 +1677,9 @@ RegisterSerializableTransactionInt(Snapshot snapshot)
16771677
othersxact != NULL;
16781678
othersxact = NextPredXact(othersxact))
16791679
{
1680-
if (!SxactIsOnFinishedList(othersxact) &&
1681-
!SxactIsReadOnly(othersxact))
1680+
if (!SxactIsCommitted(othersxact)
1681+
&& !SxactIsDoomed(othersxact)
1682+
&& !SxactIsReadOnly(othersxact))
16821683
{
16831684
SetPossibleUnsafeConflict(sxact, othersxact);
16841685
}

0 commit comments

Comments
 (0)