abbra / bind-dyndb-ldap

Forked from bind-dyndb-ldap 5 years ago
Clone

17a29e2 Fix deadlocks on shutdown caused by sync_*_wait() calls.

Authored and Committed by pspacek 9 years ago
    Fix deadlocks on shutdown caused by sync_*_wait() calls.
    
    sync_event_wait() and sync_concurr_limit_wait() calls were updated to
    check inst->exiting variable. This is necessary to prevent deadlocks
    on shutdown, e.g. in situation where syncrepl queue is full
    (sync_concurr_limit_wait() is blocking) and BIND receives SIGINT.
    
    Both synchronization calls now fail with ISC_R_SHUTTINGDOWN
    if LDAP instance is marked as "exiting".
    
    Signed-off-by: Petr Spacek <pspacek@redhat.com>
    
        
file modified
+15 -7
file modified
+2 -0
file modified
+5 -4
file modified
+4 -2
file modified
+52 -16
file modified
+6 -6