[SCM] Samba Shared Repository - branch master updated
Michael Adam
obnox at samba.org
Fri May 3 06:49:03 MDT 2013
The branch, master has been updated
via 0a29101 idmap: Store negative cache entries if the backend fails
via 1966e28 idmap: Print error from idmap_backends_unixid_to_sid
from 5f82641 libsmb: Use sizeof instead of explicit numbers
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 0a2910152aaafa1c7d484f8a0ade869d7962d4e3
Author: Volker Lendecke <vl at samba.org>
Date: Fri May 3 10:28:59 2013 +0000
idmap: Store negative cache entries if the backend fails
This changes the behaviour for out-of-range queries: The tdb backend
(probably all backends) returns NT_STATUS_NONE_MAPPED and does not set the
map.status value to ID_UNMAPPED. This means that we did an early error
exit, not setting a negative cache value. This makes smbd ask winbind
over and over again for out-of-range gids, which can be a performance
problem in certain scenarios.
The new code makes us fall through to the code setting the negative
cache entry in all cases.
Signed-off-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Michael Adam <obnox at samba.org>
Autobuild-User(master): Michael Adam <obnox at samba.org>
Autobuild-Date(master): Fri May 3 14:48:35 CEST 2013 on sn-devel-104
commit 1966e28d157da3ef561a6e760eb4736e917fdd81
Author: Volker Lendecke <vl at samba.org>
Date: Fri May 3 10:24:17 2013 +0000
idmap: Print error from idmap_backends_unixid_to_sid
Signed-off-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Michael Adam <obnox at samba.org>
-----------------------------------------------------------------------
Summary of changes:
source3/winbindd/idmap_util.c | 10 ++++++----
1 files changed, 6 insertions(+), 4 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source3/winbindd/idmap_util.c b/source3/winbindd/idmap_util.c
index a068298..e671acf 100644
--- a/source3/winbindd/idmap_util.c
+++ b/source3/winbindd/idmap_util.c
@@ -68,8 +68,9 @@ backend:
ret = idmap_backends_unixid_to_sid(domname, &map);
if ( ! NT_STATUS_IS_OK(ret)) {
- DEBUG(10, ("error mapping uid [%lu]\n", (unsigned long)uid));
- return ret;
+ DEBUG(10, ("error mapping uid [%lu]: %s\n", (unsigned long)uid,
+ nt_errstr(ret)));
+ map.status = ID_UNMAPPED;
}
if (map.status != ID_MAPPED) {
@@ -131,8 +132,9 @@ backend:
ret = idmap_backends_unixid_to_sid(domname, &map);
if ( ! NT_STATUS_IS_OK(ret)) {
- DEBUG(10, ("error mapping gid [%lu]\n", (unsigned long)gid));
- return ret;
+ DEBUG(10, ("error mapping gid [%lu]: %s\n", (unsigned long)gid,
+ nt_errstr(ret)));
+ map.status = ID_UNMAPPED;
}
if (map.status != ID_MAPPED) {
--
Samba Shared Repository
More information about the samba-cvs
mailing list