diff options
Diffstat (limited to 'src/backend/access/transam')
-rw-r--r-- | src/backend/access/transam/transam.c | 21 | ||||
-rw-r--r-- | src/backend/access/transam/xact.c | 5 |
2 files changed, 10 insertions, 16 deletions
diff --git a/src/backend/access/transam/transam.c b/src/backend/access/transam/transam.c index fe1d57d769c..03bb786f4b0 100644 --- a/src/backend/access/transam/transam.c +++ b/src/backend/access/transam/transam.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/access/transam/transam.c,v 1.26 1999/05/25 16:07:45 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/access/transam/transam.c,v 1.27 1999/06/10 14:17:06 vadim Exp $ * * NOTES * This file contains the high level access-method interface to the @@ -172,8 +172,14 @@ TransactionLogTest(TransactionId transactionId, /* transaction id to test */ if (!fail) { - TransactionIdStore(transactionId, &cachedTestXid); - cachedTestXidStatus = xidstatus; + /* + * DO NOT cache status for transactions in unknown state !!! + */ + if (xidstatus == XID_COMMIT || xidstatus == XID_ABORT) + { + TransactionIdStore(transactionId, &cachedTestXid); + cachedTestXidStatus = xidstatus; + } return (bool) (status == xidstatus); } @@ -576,12 +582,3 @@ TransactionIdAbort(TransactionId transactionId) TransactionLogUpdate(transactionId, XID_ABORT); } - -void -TransactionIdFlushCache() -{ - - TransactionIdStore(AmiTransactionId, &cachedTestXid); - cachedTestXidStatus = XID_COMMIT; - -} diff --git a/src/backend/access/transam/xact.c b/src/backend/access/transam/xact.c index d03136b5085..4689a2f82ea 100644 --- a/src/backend/access/transam/xact.c +++ b/src/backend/access/transam/xact.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/access/transam/xact.c,v 1.40 1999/06/06 20:19:34 vadim Exp $ + * $Header: /cvsroot/pgsql/src/backend/access/transam/xact.c,v 1.41 1999/06/10 14:17:06 vadim Exp $ * * NOTES * Transaction aborts can now occur two ways: @@ -514,8 +514,6 @@ CommandCounterIncrement() AtCommit_Cache(); AtStart_Cache(); - TransactionIdFlushCache(); - } void @@ -822,7 +820,6 @@ StartTransaction() { TransactionState s = CurrentTransactionState; - TransactionIdFlushCache(); FreeXactSnapshot(); XactIsoLevel = DefaultXactIsoLevel; |