*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/tcop/postgres.c,v 1.243 2001/12/04 19:40:17 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/tcop/postgres.c,v 1.244 2002/01/01 23:16:22 tgl Exp $
*
* NOTES
* this is the "main" module of the postgres backend and
if (!IsUnderPostmaster)
{
puts("\nPOSTGRES backend interactive interface ");
- puts("$Revision: 1.243 $ $Date: 2001/12/04 19:40:17 $\n");
+ puts("$Revision: 1.244 $ $Date: 2002/01/01 23:16:22 $\n");
}
/*
/*
* Exit interrupt holdoff section we implicitly established above.
- * (This could result in accepting a cancel or die interrupt.)
*/
RESUME_INTERRUPTS();
}
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: miscadmin.h,v 1.97 2001/11/05 17:46:31 momjian Exp $
+ * $Id: miscadmin.h,v 1.98 2002/01/01 23:16:22 tgl Exp $
*
* NOTES
* some of the information in this file should be moved to
* or die interrupt. The HOLD_INTERRUPTS() and RESUME_INTERRUPTS() macros
* allow code to ensure that no cancel or die interrupt will be accepted,
* even if CHECK_FOR_INTERRUPTS() gets called in a subroutine. The interrupt
- * will be held off until the last matching RESUME_INTERRUPTS() occurs.
+ * will be held off until CHECK_FOR_INTERRUPTS() is done outside any
+ * HOLD_INTERRUPTS() ... RESUME_INTERRUPTS() section.
*
* Special mechanisms are used to let an interrupt be accepted when we are
* waiting for a lock or when we are waiting for command input (but, of
do { \
Assert(InterruptHoldoffCount > 0); \
InterruptHoldoffCount--; \
- if (InterruptPending) \
- ProcessInterrupts(); \
} while(0)
#define START_CRIT_SECTION() (CritSectionCount++)
do { \
Assert(CritSectionCount > 0); \
CritSectionCount--; \
- if (InterruptPending) \
- ProcessInterrupts(); \
} while(0)