[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: slapd hanging upon shutdown (ITS#5841)

Yes, this sounds familiar.  I guess I mentioned it but didn't have time
to check it.  The offending if() comes from tpool.c rev 1.81, which was
apparently a wrong fix to ITS#5194.  rev 1.82 was the right fix.
(Except I'm not so sure it was the _complete_ fix - might need to lock
ldap_pvt_thread_pool_mutex while changing or even accessing *tpool, or
something like that...)

Anyway, the patch looks correct to me, undoing rev 1.81.

The current code is clear enough in retrospect - a thread pool pause in
halts pool_destroy() since pool_resume() doesn't broadcast - and thus a
cn=config update (or access?) aborts slapd shutdown:-(