lists.arthurdejong.org
RSS feed

Re: [nssldap] Connecting to servers that do not support Simple Page Requests

[Date Prev][Date Next] [Thread Prev][Thread Next]

Re: [nssldap] Connecting to servers that do not support Simple Page Requests



Novell Edirectory Does NOT list the VLV control.

Novell Edirectory Does list AND support the SPR control.

They do have some support for VLV, even though it is NOT listed.
We did some work on this and have some docs at:
http://ldapwiki.willeke.com/wiki/EDirectoryLDAPVirtualListViewAndServerSideSortControls


-jim
Jim Willeke


On Thu, Jan 21, 2010 at 7:27 AM, Howard Wilkinson <howard [at] cohtech.com> wrote:
In commissioning an environment based on the Sun One directory server it has become obvious that there is a potential problem with large 'maps' in the current nss_ldap implementation. The Sun One server does not support Simple Page Requests and therefore the paging feature inside nss_ldap is effectively disabled. The effect of this is that the request to the server to provide data in paged format is ignored (nss_ldap does not mark this as a critical extension in the query) and the data is returned in one blob as fast as the server can generate it. While the conversation works this means that the client has no means to manage the load on the server and relies on the network back pressure to manage data delivery.

The Sun One server does support the VLV (Virtual List View) extension which can be used for a similar purpose.

I propose to add this to the nss_ldap core so that the code queries the Root DSE for Supported Controls and uses Simple Page Requests (SPR) if they are supported, will fail over to VLV controls if they are supported and suppress any paging request if neither is supported.

I have 3 questions that I would like to get some advice on:

1.
       Does anybody know of any server that does not report the Supported Controls in the Root DSE.
2.
       Are there any mainstream servers that do not support one or the other of these 2 controls.
3.
       Should I make the order of preference of VLV and SPR configurable in the ldap.conf file - this is complicated if the back end servers that the library can connect to are of different pedigree and therefore the availability of the requisite control is dependent on which server is used for which query.

The implementation of the addition of this control should be easy, but it does mean adding logic to the connection code to detect support controls everytime the library connects to a server (we cannot assume that all servers the library uses in a failure tolerant environment have the same facilities available) A additional round trip load on the servers.

Thoughts and comments welcomed.


Coherent Technology Limited, 23 Northampton Square, Finsbury, London EC1V 0HL, United Kingdom
Telephone: +44 20 3355 6467 Mobile: +44 7980 639379
Company Email: coherent [at] cohtech.com Website: http://www.cohtech.com <http://www.cohtech.com/>