diff options
author | Noriko Hosoi <nhosoi@redhat.com> | 2009-08-04 11:54:34 -0700 |
---|---|---|
committer | Noriko Hosoi <nhosoi@redhat.com> | 2009-08-04 11:54:34 -0700 |
commit | 0565e8c39894b059191cfaff2176f758141ffe3b (patch) | |
tree | c654289fb6104ee5c1ef10f1373da9b9897f0a41 /ldap/servers/slapd/proto-slap.h | |
parent | cbed8a2780469cdbf298c30e7f10da01c4356d03 (diff) | |
download | ds-0565e8c39894b059191cfaff2176f758141ffe3b.tar.gz ds-0565e8c39894b059191cfaff2176f758141ffe3b.tar.xz ds-0565e8c39894b059191cfaff2176f758141ffe3b.zip |
513916 Server doesn't ignore paged control, if page size and server's estimate of total no of entries are same
The code processing search results were returning the PAGE END without
knowing there are more entries to return or not. To learn it, introduced
"read ahead" one entry when it comes to the PAGE END. If there are more
entries, the code undo the read ahead, which prompts for the next page
on the client side. If there is no more entries, it returns the status
SEARCH END instead of PAGE END.
In addition to the read ahead implementation to fix the bug 513916,
* supporting Simple Paged Results for chaining backend is added.
* fixed a bug in idl_new_fetch (idl_new.c) -- idlistscanlimit was not
checked when the cursor comes to the end of an index file.
Diffstat (limited to 'ldap/servers/slapd/proto-slap.h')
-rw-r--r-- | ldap/servers/slapd/proto-slap.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/ldap/servers/slapd/proto-slap.h b/ldap/servers/slapd/proto-slap.h index f530d99b..5c6eed4d 100644 --- a/ldap/servers/slapd/proto-slap.h +++ b/ldap/servers/slapd/proto-slap.h @@ -604,7 +604,7 @@ void dse_unset_dont_ever_write_dse_files(void); int dse_next_search_entry (Slapi_PBlock *pb); char *dse_read_next_entry( char *buf, char **lastp ); void dse_search_set_release (void **ss); - +void dse_prev_search_results (Slapi_PBlock *pb); /* |