[Date Prev][Date Next]
Re: commit: ldap/servers/slapd main.c (init schema early)
Hallvard B Furuseth wrote:
>> main.c 1.208 -> 1.209 ITS#3917 init schema before parsing args
> Now slapd uses mutexes before calling ldap_pvt_thread_initialize().
Heh. The slap tools do that anyway, since they never call that
function. Which may mean it's harmless with the thread
implementations OpenLDAP supports,
Right. ldap_pvt_thread_initialize just calls ldap_int_thread_initialize
which is a no-op on the majority of implementations (except pth). It
then inits the thread pool (which is not used in tool mode). At any
rate, ldap_pvt_thread_initialize appears to be devoted to the required
setup for actually spawning threads, and doesn't have any effect on
setting up mutexes or any other locking primitives. Which makes sense;
if any of those primitives needed elaborate setup they wouldn't really
be "primitives" would they...
but in any case - is there any reason not to always call
ldap_pvt_thread_initialize() early, maybe just before main() checks
if argv is a tool name?
I guess there's no harm in doing it. There's probably more in
slapcommon.c that we should factor out as well.
-- Howard Chu
Chief Architect, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc
OpenLDAP Core Team http://www.openldap.org/project/