Hello Howard, Quanah
Thanks for your help,it seems the workaround to increase the values helped:
What i did was to modify file servers/slapd/back-bdb/idl.h
#define BDB_IDL_LOGN 16 /* DB_SIZE is 2^16, UM_SIZE is 2^17 */
#define BDB_IDL_DB_SIZE (1<<(BDB_IDL_LOGN+1)) /* 64k => 128K */
#define BDB_IDL_UM_SIZE (1<<(BDB_IDL_LOGN+2)) /* 128k => 256k */
and recompile....after that, i recreated the DB from ldif and added some extra entries using ldapadd.
The search returned all entries within a reasonable time ( 23 - 50 seconds).
# search result
search: 2
result: 0 Success
# numResponses: 84256
# numEntries: 84255
real 0m35.044s
user 0m1.521s
sys 0m1.654s
T.
Tihomir Culjaga wrote:This was essential information; previously you led us to believe you were doing a simple search with no filter (defaulting to "(objectclass=*)"). If you don't provide accurate descriptions of what you're doing, you cannot expect to get correct analysis of your situation.
the search:
ldapsearch -h localhost -x -b
ou=bestMatchPrefixList,ou=sipDirektor,dc=ot,dc=hr -D
cn=admin,dc=ot,dc=hr -w passwd objectClass=originatorPrefixID
You have run into an architectural limitation of the back-bdb/hdb indexing mechanism. This problem is described in ITS#3343
http://www.openldap.org/its/index.cgi?findid=3343
with some solutions discussed in
http://www.openldap.org/lists/openldap-devel/200503/msg00012.html
and http://www.openldap.org/lists/openldap-devel/200810/msg00095.html
but no final decisions have been made yet on the ultimate solution. Each approach has different limitations and tradeoffs to consider...
slapd.conf:ot.hr <http://ot.hr>
# Indices to maintain
index objectClass eq
index uniqueID eq
index bestMatchPrefix eq
index originatorPrefixID eq
according to schema i have
ou=ou=sipDirektor
|
--------- ou=bestMatchPrefixList
|
-----------
bestMatchPrefix=<PREFIX>
|
------------------carrierPrefixID=<CARRIER_ID>
|
----------------originatorPrefixID=<ORIGIN_CARRIER_PREFIX>
here is an example of returned data:
# 041020, 078120.100.10000.90, 1251, bestMatchPrefixList, sipDirektor,
ot.hr <http://ot.hr>
dn:
originatorPrefixID=041020,carrierPrefixID=078120.100.10000.90,bestMatchPre
fix=1251,ou=bestMatchPrefixList,ou=sipDirektor,dc=ot,dc=hr
originatorPrefix: 041020
priority: 100
originator: 041020
originatorPrefixID: 041020
objectClass: top
objectClass: originatorPrefixID
# 049010, 078120.100.10000.90, 1251, bestMatchPrefixList, sipDirektor,
ot.hr <http://ot.hr>
dn:
originatorPrefixID=049010,carrierPrefixID=078120.100.10000.90,bestMatchPre
fix=1251,ou=bestMatchPrefixList,ou=sipDirektor,dc=ot,dc=hr
originatorPrefix: 049010
priority: 100
originator: 049010
originatorPrefixID: 049010
objectClass: top
objectClass: originatorPrefixID
# 046010, 078120.100.10000.90, 1251, bestMatchPrefixList, sipDirektor,
ot.hr <http://ot.hr>
dn:
originatorPrefixID=046010,carrierPrefixID=078120.100.10000.90,bestMatchPre
fix=1251,ou=bestMatchPrefixList,ou=sipDirektor,dc=ot,dc=hr
originatorPrefix: 046010
priority: 100
originator: 046010
originatorPrefixID: 046010
objectClass: top
objectClass: originatorPrefixID
# 049020, 078120.100.10000.90, 1251, bestMatchPrefixList, sipDirektor,
ot.hr <http://ot.hr>
dn:
originatorPrefixID=049020,carrierPrefixID=078120.100.10000.90,bestMatchPre
fix=1251,ou=bestMatchPrefixList,ou=sipDirektor,dc=ot,dc=hr
originatorPrefix: 049020
priority: 100
originator: 049020
originatorPrefixID: 049020
objectClass: top
objectClass: originatorPrefixID
# 078120, 078120.100.10000.90, 1251, bestMatchPrefixList, sipDirektor,
ot.hr <http://ot.hr>
dn:
originatorPrefixID=078120,carrierPrefixID=078120.100.10000.90,bestMatchPre
fix=1251,ou=bestMatchPrefixList,ou=sipDirektor,dc=ot,dc=hr
originatorPrefix: 078120
priority: 100
originator: 078120
originatorPrefixID: 078120
objectClass: top
objectClass: originatorPrefixID
# 043010, 078120.100.10000.90, 1251, bestMatchPrefixList, sipDirektor,
dn:
originatorPrefixID=043010,carrierPrefixID=078120.100.10000.90,bestMatchPre
fix=1251,ou=bestMatchPrefixList,ou=sipDirektor,dc=ot,dc=hr
originatorPrefix: 043010
priority: 100
originator: 043010
originatorPrefixID: 043010
objectClass: top
objectClass: originatorPrefixID
Tihomir.
On Fri, Sep 18, 2009 at 12:33 AM, Quanah Gibson-Mount <quanah@zimbra.com<mailto:quanah@zimbra.com>> wrote:
--On Thursday, September 17, 2009 12:26 PM -0700 Quanah Gibson-Mount<quanah@zimbra.com <mailto:quanah@zimbra.com>> wrote:
--On Thursday, September 17, 2009 9:23 PM +0200 Tihomir Culjaga<tculjaga@gmail.com <mailto:tculjaga@gmail.com>> wrote:<tculjaga@gmail.com <mailto:tculjaga@gmail.com>>
so, can anyone help here ?
On Tue, Sep 15, 2009 at 8:34 PM, Tihomir Culjaga
wrote:
ok .. but the basic issue is still there ...
i do a complete search and it hangs right on the 1st entry i
added with
LDAP search ... it watis for 1 minute ...and at the end
returns all 4
remaining entries...
Can you better define the search you are running? Is it a search
for particular attr=value string? If so, is that attribute indexed?
--Quanah
--
Quanah Gibson-Mount
Principal Software Engineer
Zimbra, Inc
--------------------
Zimbra :: the leader in open source messaging and collaboration
--
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/