summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVadim B. Mikheev1996-11-27 07:14:51 +0000
committerVadim B. Mikheev1996-11-27 07:14:51 +0000
commit713b65e19c1cf58bbc5dd4dd8845ddf4a67aaa26 (patch)
treee81bade13f2e940936cdf9b1ba68ad991c4f6b1c
parent1db76d708cc34caaa49952d87cea3c906bda9074 (diff)
Setting MyProc->xid to current transaction' id in StartTransaction
and to InvalidTransactionId in CommitTransaction & AbortTransaction (it's for new TransactionIdIsInProgress func).
-rw-r--r--src/backend/access/transam/xact.c26
1 files changed, 24 insertions, 2 deletions
diff --git a/src/backend/access/transam/xact.c b/src/backend/access/transam/xact.c
index ff8908de095..e58502ccaa8 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.5 1996/11/10 02:59:16 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/access/transam/xact.c,v 1.6 1996/11/27 07:14:51 vadim Exp $
*
* NOTES
* Transaction aborts can now occur two ways:
@@ -753,7 +753,15 @@ StartTransaction()
* state to "in progress"
* ----------------
*/
- s->state = TRANS_INPROGRESS;
+ s->state = TRANS_INPROGRESS;
+
+ /*
+ * Let others to know about current transaction is in progress
+ * - vadim 11/26/96
+ */
+ if ( MyProc != (PROC*) NULL )
+ MyProc->xid = s->transactionIdData;
+
}
/* ---------------
@@ -815,6 +823,13 @@ CommitTransaction()
if (IsNormalProcessingMode())
Async_NotifyAtCommit();
}
+
+ /*
+ * Let others to know about no transaction in progress
+ * - vadim 11/26/96
+ */
+ if ( MyProc != (PROC*) NULL )
+ MyProc->xid = InvalidTransactionId;
}
/* --------------------------------
@@ -827,6 +842,13 @@ AbortTransaction()
{
TransactionState s = CurrentTransactionState;
+ /*
+ * Let others to know about no transaction in progress
+ * - vadim 11/26/96
+ */
+ if ( MyProc != (PROC*) NULL )
+ MyProc->xid = InvalidTransactionId;
+
/* ----------------
* check the current transaction state
* ----------------