If a client has thousands or more requests in flight at the same
time, it has to
look up the right request every time it receives a response. As the requests are
tracked in a doubly-linked list, lookup tends to take O(n) steps whichever
direction we take and things generally get out of hand from there on.
The linked branch puts them into a TAvl for quicker lookup, with another commit
to let people test as (t)avl code is part of liblutil at the moment.
Is it worth putting parts of liblutil into libldap or maybe letting
liblutil be dynamically linked so it can be used from there?
Are there other options on the table?
Senior Software Engineer
Symas Corporation http://www.symas.com
Packaged, certified, and supported LDAP solutions powered by OpenLDAP