summaryrefslogtreecommitdiffstats
path: root/server/db/sysdb.h
diff options
context:
space:
mode:
authorSimo Sorce <ssorce@redhat.com>2009-11-17 20:22:36 -0500
committerStephen Gallagher <sgallagh@redhat.com>2009-11-20 16:46:47 -0500
commit7e4bf8856e9b65e612ca195a3b4f10bfb53a8259 (patch)
treec890f41e3f48e25c9c2eb0ceaa8bffb6625303c4 /server/db/sysdb.h
parent9cbcc60997b3d9fd6c5c17f956bc90aac1abba70 (diff)
downloadsssd-7e4bf8856e9b65e612ca195a3b4f10bfb53a8259.tar.gz
sssd-7e4bf8856e9b65e612ca195a3b4f10bfb53a8259.tar.xz
sssd-7e4bf8856e9b65e612ca195a3b4f10bfb53a8259.zip
Optimize sysdb_enumgrent
This brings down the time needed to enumerate my group database from 2.4 seconds to 0.15 seconds.
Diffstat (limited to 'server/db/sysdb.h')
-rw-r--r--server/db/sysdb.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/server/db/sysdb.h b/server/db/sysdb.h
index f94b43fdb..d9f224c1d 100644
--- a/server/db/sysdb.h
+++ b/server/db/sysdb.h
@@ -31,9 +31,12 @@
#define SYSDB_BASE "cn=sysdb"
#define SYSDB_DOM_BASE "cn=%s,cn=sysdb"
-#define SYSDB_TMPL_USER_BASE "cn=users,cn=%s,"SYSDB_BASE
-#define SYSDB_TMPL_GROUP_BASE "cn=groups,cn=%s,"SYSDB_BASE
-#define SYSDB_TMPL_CUSTOM_BASE "cn=custom,cn=%s,"SYSDB_BASE
+#define SYSDB_USERS_CONTAINER "cn=users"
+#define SYSDB_GROUPS_CONTAINER "cn=groups"
+#define SYSDB_CUSTOM_CONTAINER "cn=custom"
+#define SYSDB_TMPL_USER_BASE SYSDB_USERS_CONTAINER",cn=%s,"SYSDB_BASE
+#define SYSDB_TMPL_GROUP_BASE SYSDB_GROUPS_CONTAINER",cn=%s,"SYSDB_BASE
+#define SYSDB_TMPL_CUSTOM_BASE SYSDB_CUSTOM_CONTAINER",cn=%s,"SYSDB_BASE
#define SYSDB_USER_CLASS "user"
#define SYSDB_GROUP_CLASS "group"
@@ -114,6 +117,7 @@
SYSDB_DEFAULT_ATTRS, \
NULL}
#define SYSDB_GRSRC_ATTRS {SYSDB_NAME, SYSDB_GIDNUM, \
+ SYSDB_MEMBER, \
SYSDB_DEFAULT_ATTRS, \
NULL}
#define SYSDB_GRPW_ATTRS {SYSDB_NAME, SYSDB_UIDNUM, \