mirror of
https://git.openldap.org/openldap/openldap.git
synced 2026-01-11 01:12:54 -05:00
ITS#5836 more for 1.432, writetimeout wasn't taking effect if
idletimeout wasn't also set. Also, timeout check would keep getting pushed back if multiple writers were waiting.
This commit is contained in:
parent
4353379403
commit
e6173ac9c2
1 changed files with 3 additions and 3 deletions
|
|
@ -957,7 +957,7 @@ slapd_set_write( ber_socket_t s, int wake )
|
|||
SLAP_SOCK_SET_WRITE( s );
|
||||
slap_daemon.sd_nwriters++;
|
||||
}
|
||||
if (( wake & 2 ) && global_writetimeout ) {
|
||||
if (( wake & 2 ) && global_writetimeout && !chk_writetime ) {
|
||||
chk_writetime = slap_get_time();
|
||||
}
|
||||
|
||||
|
|
@ -2177,7 +2177,7 @@ slapd_daemon_task(
|
|||
*/
|
||||
if ( chk_writetime ) {
|
||||
tv.tv_sec = global_writetimeout;
|
||||
tv.tv_usec = global_writetimeout;
|
||||
tv.tv_usec = 0;
|
||||
if ( difftime( chk_writetime, now ) < 0 )
|
||||
check = 2;
|
||||
} else {
|
||||
|
|
@ -2245,7 +2245,7 @@ slapd_daemon_task(
|
|||
|
||||
nfds = SLAP_EVENT_MAX;
|
||||
|
||||
if ( global_idletimeout && slap_daemon.sd_nactives ) at = 1;
|
||||
if (( chk_writetime || global_idletimeout ) && slap_daemon.sd_nactives ) at = 1;
|
||||
|
||||
ldap_pvt_thread_mutex_unlock( &slap_daemon.sd_mutex );
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue