Commit e2e19ca0 authored by Tom Lane's avatar Tom Lane

Seems like we should not hold off cancel/die interrupts while we are

running deferred triggers.  They are really part of the regular
transaction, and they could take awhile.
parent 602b7425
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/access/transam/xact.c,v 1.101 2001/03/22 06:16:10 momjian Exp $ * $Header: /cvsroot/pgsql/src/backend/access/transam/xact.c,v 1.102 2001/05/04 18:39:16 tgl Exp $
* *
* NOTES * NOTES
* Transaction aborts can now occur two ways: * Transaction aborts can now occur two ways:
...@@ -1026,9 +1026,6 @@ CommitTransaction(void) ...@@ -1026,9 +1026,6 @@ CommitTransaction(void)
if (s->state != TRANS_INPROGRESS) if (s->state != TRANS_INPROGRESS)
elog(NOTICE, "CommitTransaction and not in in-progress state "); elog(NOTICE, "CommitTransaction and not in in-progress state ");
/* Prevent cancel/die interrupt while cleaning up */
HOLD_INTERRUPTS();
/* /*
* Tell the trigger manager that this transaction is about to be * Tell the trigger manager that this transaction is about to be
* committed. He'll invoke all trigger deferred until XACT before we * committed. He'll invoke all trigger deferred until XACT before we
...@@ -1036,6 +1033,9 @@ CommitTransaction(void) ...@@ -1036,6 +1033,9 @@ CommitTransaction(void)
*/ */
DeferredTriggerEndXact(); DeferredTriggerEndXact();
/* Prevent cancel/die interrupt while cleaning up */
HOLD_INTERRUPTS();
/* /*
* set the current transaction state information appropriately during * set the current transaction state information appropriately during
* the abort processing * the abort processing
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment