The following patch is to remove major cycle eaters in the synchronous
search processing in the client library. It can speed up synchronous
searches with large result sets by a significant amount.
For example, a synchronous search for 16K entries which took more than 30
seconds originally only took slightly more than one second with this
patch. Before inclusion of this patch in the release engineering /
release, I think it desirable to go through a round of
feedback/discussions in the community. For example, it seems that the
current result processing assumes a conformant communicating party at the
other end. The current patch was prepared according to the behavior of
the original result processing code and hence may need to be revised
further (see FIXME in the patch). Cheers,
- Jong-Hyuk