From 1c494241347d3d397552f2f8d1f1cf828d4e6672 Mon Sep 17 00:00:00 2001 From: Ryan Tandy Date: Wed, 6 May 2015 21:39:10 -0700 Subject: [PATCH] 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. --- servers/slapd/overlays/dds.c | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/servers/slapd/overlays/dds.c b/servers/slapd/overlays/dds.c index 56253314a7..b5971cbc7f 100644 --- a/servers/slapd/overlays/dds.c +++ b/servers/slapd/overlays/dds.c @@ -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, -- 2.39.5