Simon Riggs <simon@2ndQuadrant.com> writes:
> We still have to consider how Postgres would operate without the
> latches. I don't see that it can, so a shutdown seems appropriate. Is
> the purpose of this just to allow a cleaner and more informative
> shutdown? Or do you think we can avoid?
The point is that right now, if a new backend fails its initialization
at this specific step, that gets translated into a database-wide crash
and restart cycle, for no good reason. It should just result in that
particular session failing.
> If we did move the init calls, would that alter things for code that
> creates new used defined latches?
Only to the extent that it'd have to make sure it called the
initialization function at some appropriate point. It's not like
required initialization functions are a foreign concept in our code.
regards, tom lane