mirror of
https://git.openldap.org/openldap/openldap.git
synced 2024-12-21 03:10:25 +08:00
ITS#8133 avoid mods during dds_db_open
If dds is present early in the overlay stack, the modify ops from dds_expire can trigger other overlays before they have initialized. Avoid that by delaying the first expiry until startup has finished.
This commit is contained in:
parent
b0950f4d44
commit
1c49424134
@ -1740,18 +1740,6 @@ dds_db_open(
|
||||
goto done;
|
||||
}
|
||||
|
||||
/* ... if there are dynamic objects, delete those expired */
|
||||
if ( di->di_num_dynamicObjects > 0 ) {
|
||||
/* force deletion of expired entries... */
|
||||
be->bd_info = (BackendInfo *)on->on_info;
|
||||
rc = dds_expire( thrctx, di );
|
||||
be->bd_info = (BackendInfo *)on;
|
||||
if ( rc != LDAP_SUCCESS ) {
|
||||
rc = 1;
|
||||
goto done;
|
||||
}
|
||||
}
|
||||
|
||||
/* start expire task */
|
||||
ldap_pvt_thread_mutex_lock( &slapd_rq.rq_mutex );
|
||||
di->di_expire_task = ldap_pvt_runqueue_insert( &slapd_rq,
|
||||
|
Loading…
Reference in New Issue
Block a user