OK, I see your point.  Can anyone remember why this was needed?  I
remember Magnus wanted query cancel, but what was the logic for session


Tom Lane wrote:
> Bruce Momjian <[EMAIL PROTECTED]> writes:
> > I have applied the attached patch:
> >    Exit backend from SIGTERM or FATAL by simulating client EOF, rather than
> >    calling proc_exit() directly.  This should make SIGTERM more reliable.
> After further consideration I have concluded that this was a
> spectacularly bad idea and we should revert that patch.  There is a very
> large amount of processing that this patch will cause to happen after a
> FATAL error has been declared, and I doubt that any of it is a good
> idea.  Some examples:
> * AbortCurrentTransaction() --- not too cool if the FATAL error was one
>   of the ones in xact.c that are complaining of fatally bollixed
>   transaction state.
> * pgstat reporting --- aside from the chance of an outright crash, we
>   might be transmitting bogus statistics to the collector.
> * sending a ReadyForQuery (Z) message --- one thing we quite certainly
>   ain't is ReadyForQuery.
> * EnableNotifyInterrupt --- this may result in actually trying to run
>   a transaction to look through pg_listener :-(
> * ProcessConfigFile, if we had a pending SIGHUP --- also not too cool,
>   if the FATAL was from guc.c.
> I am still dubious that zapping random backends with SIGTERM is a sane
> or supportable idea.  But this patch does not make things better, it
> simply greatly increases the chance of a FATAL exit turning into a
> backend crash or PANIC.
>                       regards, tom lane

  Bruce Momjian                        |  http://candle.pha.pa.us
  [EMAIL PROTECTED]               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

---------------------------(end of broadcast)---------------------------
TIP 7: don't forget to increase your free space map settings

Reply via email to