Dan Moschuk <dan(at)freebsd(dot)org> writes:
> | We should probably tweak the postmaster to be less enthusiastic about
> | signaling its children repeatedly.
> Perhaps have postgres ignore SIGUSR1 after it has already received one?
Now that you mention it, it tries to do exactly that:
void
quickdie(SIGNAL_ARGS)
{
PG_SETMASK(&BlockSig);
elog(NOTICE, "Message from PostgreSQL backend:"
...
BlockSig includes SIGUSR1. So why is the quickdie() routine entered
again? I'm back to suspecting something funny in Solaris' signal
handling...
regards, tom lane