*** pgsql/src/backend/tcop/postgres.c 2008/04/15 13:55:11 1.549 --- pgsql/src/backend/tcop/postgres.c 2008/04/15 20:28:46 1.550 *************** StatementCancelHandler(SIGNAL_ARGS) *** 2541,2548 **** * waiting for input, however. */ if (ImmediateInterruptOK && InterruptHoldoffCount == 0 && ! CritSectionCount == 0 && ! (!DoingCommandRead || MyProc->terminate)) { /* bump holdoff count to make ProcessInterrupts() a no-op */ /* until we are done getting ready for it */ --- 2541,2547 ---- * waiting for input, however. */ if (ImmediateInterruptOK && InterruptHoldoffCount == 0 && ! CritSectionCount == 0 && !DoingCommandRead) { /* bump holdoff count to make ProcessInterrupts() a no-op */ /* until we are done getting ready for it */ *************** ProcessInterrupts(void) *** 2622,2631 **** ereport(ERROR, (errcode(ERRCODE_QUERY_CANCELED), errmsg("canceling autovacuum task"))); - else if (MyProc->terminate) - ereport(ERROR, - (errcode(ERRCODE_ADMIN_SHUTDOWN), - errmsg("terminating backend due to administrator command"))); else ereport(ERROR, (errcode(ERRCODE_QUERY_CANCELED), --- 2621,2626 ---- *************** PostgresMain(int argc, char *argv[], con *** 3464,3472 **** /* We don't have a transaction command open anymore */ xact_started = false; - if (MyProc->terminate) - die(SIGINT); - /* Now we can allow interrupts again */ RESUME_INTERRUPTS(); } --- 3459,3464 ----