From: Howard Chu Date: Fri, 28 Nov 2008 23:45:56 +0000 (+0000) Subject: Let the idletimeout check kill hung writers X-Git-Tag: ACLCHECK_0~1040 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=b25c74777a175813ebb8bedc51215150d649945e;p=openldap Let the idletimeout check kill hung writers --- diff --git a/servers/slapd/connection.c b/servers/slapd/connection.c index 4c3178e338..98a2432c5f 100644 --- a/servers/slapd/connection.c +++ b/servers/slapd/connection.c @@ -225,8 +225,11 @@ int connections_timeout_idle(time_t now) c = connection_next( c, &connindex ) ) { /* Don't timeout a slow-running request or a persistent - * outbound connection */ - if( c->c_n_ops_executing || c->c_conn_state == SLAP_C_CLIENT ) { + * outbound connection. But if it has a writewaiter, see + * if the waiter has been there too long. + */ + if(( c->c_n_ops_executing && !c->c_writewaiter) + || c->c_conn_state == SLAP_C_CLIENT ) { continue; }