1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-28 07:21:54 +03:00
samba-mirror/nsswitch
Uri Simchoni 5a6a4838f0 winbind client: avoid vicious cycle created by client retry
This patch cancels the retry policy of the winbind client.

When winbindd fails to respond to a request within 30 seconds,
the winbind client closes the connection and retries up to 10
times.

In some cases, delayed response is a result of multiple
requests from multiple clients piling up on the winbind domain
child process. Retrying just piles more and more requests,
creating a vicious cycle.

Even in the case of a single request taking long to complete,
there's no point in retrying because the retry request would just
wait for the current request to complete. Better to wait patiently.

There's one possible benefit in the retry, namely that winbindd typically
caches the results, and therefore a retry might take a cached result, so
the net effect of the retry may be to increase the timeout to 300 seconds.
But a more straightforward way to have a 300 second timeout is to modify the
timeout. Therefore the timeout is modified from 30 seconds to 300 seconds

(IMHO 300 seconds is too much, but we have "winbind rquest timeout"
with a default of 60 to make sure the request completes or fails
within 60 seconds)

BUG: https://bugzilla.samba.org/show_bug.cgi?id=11397

Signed-off-by: Uri Simchoni <urisimchoni@gmail.com>
Reviewed-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
2015-07-15 22:41:13 +02:00
..
libwbclient Update libwbclient version to 0.12 2015-03-10 03:24:45 +01:00
tests nsswitch: Extend idmap_rfc2307 testcase for reverse lookup 2015-06-05 01:24:32 +02:00
nsstest.c Fix bug 10025 - Lack of Sanity Checking in calls to malloc()/calloc(). 2013-07-17 16:12:19 -07:00
nsstest.h
pam_winbind.c pam: Fix CID 1034871 Resource leak 2015-03-03 20:03:25 +01:00
pam_winbind.h Replace all uses of iniparser with tiniparser. 2014-08-14 21:27:13 +02:00
wb_common.c winbind client: avoid vicious cycle created by client retry 2015-07-15 22:41:13 +02:00
wb_reqtrans.c nsswitch: make wb_reqtrans a common subsystem. 2011-02-17 00:52:42 +01:00
wb_reqtrans.h nsswitch: make wb_reqtrans a common subsystem. 2011-02-17 00:52:42 +01:00
wbinfo.c wbinfo: Dump user info for pam-logon -v 2015-06-11 01:45:21 +02:00
winbind_client.h Make winbind client library thread-safe by adding context 2015-03-10 00:50:09 +01:00
winbind_krb5_locator.c krb5_locator: Slightly simplify code 2014-02-20 11:43:08 -08:00
winbind_nss_aix.c Use global context for winbindd_request_response 2015-03-10 00:50:09 +01:00
winbind_nss_config.h Remove special socket_wrapper code. 2014-04-17 14:56:06 +02:00
winbind_nss_freebsd.c nss_winbind: add getgroupmembership for FreeBSD 2014-10-20 12:20:04 +02:00
winbind_nss_hpux.h s3: readd h_errno struct member but rename it 2010-06-10 23:22:49 +02:00
winbind_nss_irix.c
winbind_nss_irix.h
winbind_nss_linux.c Use global context for winbindd_request_response 2015-03-10 00:50:09 +01:00
winbind_nss_linux.h
winbind_nss_netbsd.c Use global context for winbindd_request_response 2015-03-10 00:50:09 +01:00
winbind_nss_netbsd.h
winbind_nss_solaris.c Use global context for winbindd_request_response 2015-03-10 00:50:09 +01:00
winbind_nss_solaris.h s3-nsswitch: Fix warnings on Solaris. 2012-02-06 18:28:53 +01:00
winbind_nss.h
winbind_struct_protocol.h selftest: Rename WINBINDD_SOCKET_DIR environment variable. 2014-04-17 14:56:06 +02:00
wins.c nsswitch/wins: use lp_load_global() wrapper of lp_load(). 2015-04-22 13:57:29 +02:00
wscript_build nsswitch: fix soname of linux nss_*.so.2 modules 2014-12-19 13:15:12 +01:00
wscript_configure nsswitch: Add waf tests for solaris special cases 2012-09-26 11:50:10 +02:00