Hello,
I'm testing the dynlist overlay on OpenLDAP 2.4.38 because i have a static group of around 10K uniqueMember. I want to have now a equivalent group with dynlist.
I have configured my overlay dynlist like this : dn: olcOverlay={2}dynlist,olcDatabase={1}bdb,cn=config objectClass: olcOverlayConfig objectClass: olcDynamicList olcOverlay: {2}dynlist olcDlAttrSet: {0}groupOfURLs memberURL uniqueMember
And my group is quite like OpenLDAP example in documentation :
dn: cn=GeneralisationDyn,ou=Groups,dc=example,dc=com objectClass: top objectClass: groupOfURLs cn: GeneralisationDyn memberURL: ldap:///ou=People,dc=example,dc=com??one?(objectClass=person) uniqueMember: uid=user1,ou=People,dc=example,dc=com uniqueMember: uid=user2,ou=People,dc=example,dc=com [...]
My backend is Berkeley DB and i have tune it in order to have quite fast responses on searches, and locally on my server (virtualized with a single proc), it take that time to return the entries found by memberURL :
real 0m0.272s user 0m0.040s sys 0m0.023s
If i run an ldapsearch to see all uniqueMember of my dynamic group it take around 8 to 10 seconds to have the output !
Why a so big difference of response time in a search of entries and a search of uniqueMember inside a dynamic group ? Is there some tuning for dynlist plugin ?
Notice also that when i search uniqueMember inside my static group with quite same number of uniqueMember) i have less than 0.1 seconds of real time.
Thanks, Regards, --
Frederic Poisson
2013/11/27 "POISSON Frédéric" frederic.poisson@admin.gmessaging.net:
Hello,
I'm testing the dynlist overlay on OpenLDAP 2.4.38 because i have a static group of around 10K uniqueMember. I want to have now a equivalent group with dynlist.
I have configured my overlay dynlist like this : dn: olcOverlay={2}dynlist,olcDatabase={1}bdb,cn=config objectClass: olcOverlayConfig objectClass: olcDynamicList olcOverlay: {2}dynlist olcDlAttrSet: {0}groupOfURLs memberURL uniqueMember
And my group is quite like OpenLDAP example in documentation :
dn: cn=GeneralisationDyn,ou=Groups,dc=example,dc=com objectClass: top objectClass: groupOfURLs cn: GeneralisationDyn memberURL: ldap:///ou=People,dc=example,dc=com??one?(objectClass=person) uniqueMember: uid=user1,ou=People,dc=example,dc=com uniqueMember: uid=user2,ou=People,dc=example,dc=com [...]
My backend is Berkeley DB and i have tune it in order to have quite fast responses on searches, and locally on my server (virtualized with a single proc), it take that time to return the entries found by memberURL :
real 0m0.272s user 0m0.040s sys 0m0.023s
If i run an ldapsearch to see all uniqueMember of my dynamic group it take around 8 to 10 seconds to have the output !
Why a so big difference of response time in a search of entries and a search of uniqueMember inside a dynamic group ? Is there some tuning for dynlist plugin ?
Notice also that when i search uniqueMember inside my static group with quite same number of uniqueMember) i have less than 0.1 seconds of real time.
Hi Frederic,
you should configure sortvals for uniqueMember:
dn: olcDatabase={-1}frontend,cn=config changetype: modify add: olcSortVals olcSortVals: uniqueMember
As you are a French guy, you can get more details on this page: http://coudot.blogs.linagora.com/index.php/post/2013/01/07/Astuce-OpenLDAP-%...
Clément.
Am Wed, 27 Nov 2013 10:46:40 +0100 schrieb "POISSON Frédéric" frederic.poisson@admin.gmessaging.net:
Hello,
I'm testing the dynlist overlay on OpenLDAP 2.4.38 because i have a static group of around 10K uniqueMember. I want to have now a equivalent group with dynlist.
I have configured my overlay dynlist like this : dn: olcOverlay={2}dynlist,olcDatabase={1}bdb,cn=config objectClass: olcOverlayConfig objectClass: olcDynamicList olcOverlay: {2}dynlist olcDlAttrSet: {0}groupOfURLs memberURL uniqueMember
And my group is quite like OpenLDAP example in documentation :
dn: cn=GeneralisationDyn,ou=Groups,dc=example,dc=com objectClass: top objectClass: groupOfURLs cn: GeneralisationDyn memberURL: ldap:///ou=People,dc=example,dc=com??one?(objectClass=person) uniqueMember: uid=user1,ou=People,dc=example,dc=com uniqueMember: uid=user2,ou=People,dc=example,dc=com [...]
My backend is Berkeley DB and i have tune it in order to have quite fast responses on searches, and locally on my server (virtualized with a single proc), it take that time to return the entries found by memberURL :
real 0m0.272s user 0m0.040s sys 0m0.023s
If i run an ldapsearch to see all uniqueMember of my dynamic group it take around 8 to 10 seconds to have the output !
Why a so big difference of response time in a search of entries and a search of uniqueMember inside a dynamic group ? Is there some tuning for dynlist plugin ?
Notice also that when i search uniqueMember inside my static group with quite same number of uniqueMember) i have less than 0.1 seconds of real time.
You didn't mention the search string and filter, but here my results of 5,000 entries
time ldapsearch -Y DIGEST-MD5 -U replicator -wxxxx -l0 -z0 -H ldap://localhost -b cn=dynamicGroup,o=avci,c=de -s base "*" [5000 lines]
# search result search: 3 result: 0 Success
# numResponses: 2 # numEntries: 1
real 0m0.606s user 0m0.014s sys 0m0.027s
-Dieter
"POISSON Frédéric"frederic.poisson@admin.gmessaging.net schrieb am
27.11.2013 um 10:46 in Nachricht 3fd84a3867972521.5295cd90@admin.gmessaging.net:
Hello,
I'm testing the dynlist overlay on OpenLDAP 2.4.38 because i have a static group of around 10K uniqueMember. I want to have now a equivalent group with
dynlist.
I have configured my overlay dynlist like this : dn: olcOverlay={2}dynlist,olcDatabase={1}bdb,cn=config objectClass: olcOverlayConfig objectClass: olcDynamicList olcOverlay: {2}dynlist olcDlAttrSet: {0}groupOfURLs memberURL uniqueMember
And my group is quite like OpenLDAP example in documentation :
dn: cn=GeneralisationDyn,ou=Groups,dc=example,dc=com objectClass: top objectClass: groupOfURLs cn: GeneralisationDyn memberURL: ldap:///ou=People,dc=example,dc=com??one?(objectClass=person) uniqueMember: uid=user1,ou=People,dc=example,dc=com uniqueMember: uid=user2,ou=People,dc=example,dc=com [...]
My backend is Berkeley DB and i have tune it in order to have quite fast responses on searches, and locally on my server (virtualized with a single proc), it take that time to return the entries found by memberURL :
real 0m0.272s user 0m0.040s sys 0m0.023s
Actually, if you sum sys and user, you get 0.07s. Times 10000 gives 700s. So the bulk transfer is quite efficient compared to the single transfer. Also not that the direction of search is different: Once you start from uniqueMember, and the other time you start from DN (I guess).
If i run an ldapsearch to see all uniqueMember of my dynamic group it take around 8 to 10 seconds to have the output !
Why a so big difference of response time in a search of entries and a search
of uniqueMember inside a dynamic group ? Is there some tuning for dynlist plugin ?
Notice also that when i search uniqueMember inside my static group with quite same number of uniqueMember) i have less than 0.1 seconds of real
time.
Thanks, Regards, --
Frederic Poisson
openldap-technical@openldap.org