aboutsummaryrefslogtreecommitdiff
path: root/src/backend/access/transam/xact.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/access/transam/xact.c')
-rw-r--r--src/backend/access/transam/xact.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/backend/access/transam/xact.c b/src/backend/access/transam/xact.c
index a124ba59330..70ab6e27a13 100644
--- a/src/backend/access/transam/xact.c
+++ b/src/backend/access/transam/xact.c
@@ -2262,6 +2262,10 @@ CommitTransaction(void)
s->state = TRANS_COMMIT;
s->parallelModeLevel = 0;
+ /* Disable transaction timeout */
+ if (TransactionTimeout > 0)
+ disable_timeout(TRANSACTION_TIMEOUT, false);
+
if (!is_parallel_worker)
{
/*
@@ -2535,6 +2539,10 @@ PrepareTransaction(void)
*/
s->state = TRANS_PREPARE;
+ /* Disable transaction timeout */
+ if (TransactionTimeout > 0)
+ disable_timeout(TRANSACTION_TIMEOUT, false);
+
prepared_at = GetCurrentTimestamp();
/*
@@ -2707,6 +2715,10 @@ AbortTransaction(void)
/* Prevent cancel/die interrupt while cleaning up */
HOLD_INTERRUPTS();
+ /* Disable transaction timeout */
+ if (TransactionTimeout > 0)
+ disable_timeout(TRANSACTION_TIMEOUT, false);
+
/* Make sure we have a valid memory context and resource owner */
AtAbort_Memory();
AtAbort_ResourceOwner();