]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
ITS#9456 fix prev commit
authorHoward Chu <hyc@openldap.org>
Sat, 6 Feb 2021 15:45:22 +0000 (15:45 +0000)
committerHoward Chu <hyc@openldap.org>
Sat, 6 Feb 2021 15:45:22 +0000 (15:45 +0000)
No need to reschedule the task inside asyncmeta_timeout_loop.
Frontend already does it if task was init'd with a valid interval.

servers/slapd/back-asyncmeta/init.c
servers/slapd/back-asyncmeta/meta_result.c

index 1a2accf7319a15e01bce8ab269a34a1164e03109..2c9e5bd3e6e5d83759c985e6c6a0065930741f61 100644 (file)
@@ -267,7 +267,7 @@ asyncmeta_back_db_open(
        }
        mi->mi_suffix = be->be_suffix[0];
        ldap_pvt_thread_mutex_lock( &slapd_rq.rq_mutex );
-       mi->mi_task = ldap_pvt_runqueue_insert( &slapd_rq, 0,
+       mi->mi_task = ldap_pvt_runqueue_insert( &slapd_rq, 1,
                asyncmeta_timeout_loop, mi, "asyncmeta_timeout_loop", mi->mi_suffix.bv_val );
        ldap_pvt_thread_mutex_unlock( &slapd_rq.rq_mutex );
        return 0;
index 0ab539636b4ee4e2dec7e759743f421deaf3ccc1..429857d4e81918639fc97dfd01cecf82976fefbd 100644 (file)
@@ -1809,11 +1809,7 @@ void* asyncmeta_timeout_loop(void *ctx, void *arg)
        if ( ldap_pvt_runqueue_isrunning( &slapd_rq, rtask )) {
                ldap_pvt_runqueue_stoptask( &slapd_rq, rtask );
        }
-       rtask->interval.tv_sec = 1;
-       rtask->interval.tv_usec = 0;
-       ldap_pvt_runqueue_resched(&slapd_rq, rtask, 0);
        ldap_pvt_thread_mutex_unlock( &slapd_rq.rq_mutex );
-       slap_wake_listener();
        return NULL;
 }