Full_Name: Chris Card
Version: 2.4.23
OS: Centos 5.4
URL:
Submission from: (NULL) (91.194.158.133)
I am running slapd with a bdb back end, and using ldapsearch to query it.
My ldapsearch command looks like this:
ldapsearch -h localhost -x -b "..........." -D ".........." -w .... -E
\!sss=mail:caseIgnoreIA5Match -E \!vlv=0/10/0/10
which returns the first 11 records and then prompts:
# search result
search: 2
result: 0 Success
control: 1.2.840.113556.1.4.474 false MAMKAQA=
sortResult: (0) Success
control: 2.16.840.1.113730.3.4.10 false MA8CAQACATkCAQAEBOhhowg=
vlvResult: pos=0 count=57 context=6GGjCA== (0) Success
# numResponses: 12
# numEntries: 11
Press [before/after(/offset/count|:value)] Enter for the next window.
Then, when I press Enter ldapsearch outputs the following and exits:
# extended LDIF
#
# LDAPv3
# base <......> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
# with server side sorting critical control
# with virtual list view critical control: 0/10/10/57
#
# search result
search: 3
result: 4 Size limit exceeded
# numResponses: 1
If I then try the search again ldapsearch outputs:
# extended LDIF
#
# LDAPv3
# base <......> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
# with server side sorting critical control
# with virtual list view critical control: 0/10/0/10
#
# search result
search: 2
result: 51 Server is busy
text: Other sort requests already in progress
# numResponses: 1
The "Size limit exceeded" error appears to come from slap_send_search_entry() in
result.c:
if ( op->ors_slimit >= 0 && rs->sr_nentries >= op->ors_slimit ) {
return LDAP_SIZELIMIT_EXCEEDED;
}
because op->ors_slimit is 0 instead of SLAP_NO_LIMIT (-1).
If I do the ldapsearch with an explicit size limit, using the -z flag, e.g.
ldapsearch -h localhost -x -b "..........." -D ".........." -w .... -E
\!sss=mail:caseIgnoreIA5Match -E \!vlv=0/10/0/10 -z 20
then I don't get the "Size limit exceeded" error, and all the records are output
by ldapsearch with a prompt after each set of 11 records, but after all the
records have been output there is a different error before ldapsearch exits:
# extended LDIF
#
# LDAPv3
# base <dc=blackspider,dc=com> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
# with server side sorting critical control
# with virtual list view critical control: 0/10/60/57
#
# search result
search: 8
result: 76 Virtual List View error
control: 2.16.840.1.113730.3.4.10 false MA8CATICATkCAU0EBHBFIQo=
vlvResult: pos=50 count=57 context=cEUhCg== (77) Unknown error
# numResponses: 1
and again a subsequent ldapsearch request gets the "Server is busy" error.