The distribution algorithms provided with Directory Proxy Server have certain limitations in specific request scenarios.
The following list outlines the situations in which requests do not respect the distribution algorithm. The examples in this list assume that the routing attribute is uid and the view base of the data view is dc=example,dc=com.
When the search base ends with the view base and the scope is base, requests are always distributed to the first data view. For example:
$ ldapsearch -b "ou=people,dc=example,dc=com" -s base "uid=116352"
When the search base ends with the view base and the scope is one level or subtree, requests are always distributed to the first data view. For example:
$ ldapsearch -b "ou=people,dc=example,dc=com" -s sub "uid=116352"
When the search base ends with the view base and starts with the routing attribute, but the search filter does not contain the routing attribute, requests are distributed to all data views. For example:
$ ldapsearch -b "uid=116352",ou=people,dc=example,dc=com" -s base "objectclass=*"
In this example, requests are distributed correctly if the RDN value matches the data view criteria.
When the search base ends with the view base and contains the routing attribute, but the search filter does not contain the routing attribute, requests are distributed to all data views. For example:
$ ldapsearch -b "cn=myAccount,uid=116352,ou=people,dc=example,dc=com" -s base "objectclass=*"
In this example, requests are distributed correctly if the RDN value matches the data view criteria.