> > We really need a more centralized way to handle error cleanup in > > auxiliary processes. The current state of affairs is really pretty > > helter-skelter. But for this patch, I think we should aim to mimic > > the existing style, as ugly as it is. I'm not sure whether Amit's got > > the logic correct, though: I'd agree LWLockReleaseAll(), at a minimum, > > is probably a good idea. > > Code related to bgreclaimer logic itself doesn't take any LWLock, do > you suspect the same might be required due to some Signal/Interrupt > handling?
I suspect it might creep in at some point at some unrelated place. Which will only ever break in production scenarios. Say, a lwlock in in config file processing. I seem to recall somebody seing a version of a patching adding a lwlock there... :). Or a logging hook. Or ... The savings from not doing LWLockReleaseAll() are nonexistant, so ... Greetings, Andres Freund -- Andres Freund http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers