Heikki Linnakangas <heikki.linnakangas@enterprisedb.com> writes:
> Tom Lane wrote:
>> The thing wrong with it is assuming that nothing interesting will happen
>> during proc_exit(). We hang enough stuff on on_proc_exit hooks that
>> that seems like a pretty shaky assumption.
> I can't get too worried, given that proc_exit() is a very well-beaten
> code path. Admittedly not so much for an auxiliary process, but that's
> just a dumbed down version of what happens with a full-blown backend.
Well, you're assuming that no future patch or add-on module will put
anything into an on_proc_exit hook that might interact with other
processes. It might be fine now but I don't think it's very robust.
> However I started looking into that idea anyway, and figured that it
> does simplify the logic in postmaster.c quite a bit, so I think it's
> worth doing on those grounds alone.
Couldn't you get rid of PMSIGNAL_RECOVERY_COMPLETED altogether? If the
startup process exits with code 0, recovery is complete, else there
was trouble. I find this SetPostmasterSignal bit quite ugly anyway.
regards, tom lane