Greg Thomas created DIRAPI-287:
----------------------------------

             Summary: Documentation is wrong for connection pooling
                 Key: DIRAPI-287
                 URL: https://issues.apache.org/jira/browse/DIRAPI-287
             Project: Directory Client API
          Issue Type: Bug
    Affects Versions: 1.0.0-RC2
            Reporter: Greg Thomas
            Priority: Minor


The documentation at At 
http://directory.apache.org/api/user-guide/2.1-connection-disconnection.html 
there's a nice easy to follow example of how to set up connection pooling.

The unfortunate thing is that it just doesn't work. The following line:

{code}
PoolableLdapConnectionFactory factory = new PoolableLdapConnectionFactory( 
config );
{code}

won't compile because {{PoolableLdapConnectionFactory}} doesn't exist. I'm 
guessing this is a change in API that's not yet filtered through to the 
documentation yet. Digging around 1.0.0-RC2 does turn up either 
{{DefaultPoolableLdapConnectionFactory}} or 
{{ValidatingPoolableLdapConnectionFactory}} so the documentation should 
probably be updated to reflect this.

While I'm being picky on pooling documentation;

a) It's not clear to me on reading the javadoc of these classes what exactly 
the difference is. The validating pool suggests that the default pool "may be 
the right choice" - but under what circumstances? My first thought was that the 
default pool is sufficient if you're using the same server/credentials but on 
closer examination the server/cred's are part of the pool, so clearly that's 
not right. A bit more explanation in this area may help.

b) It may be useful to document exactly how the "test on borrow" works. Digging 
round the javadoc I ended up at 
http://directory.apache.org/api/gen-docs/1.0.0-RC1/apidocs/org/apache/directory/ldap/client/api/LdapConnectionValidator.html#validate-org.apache.directory.ldap.client.api.LdapConnection-
 but I'd then need to check the source to find out /how/ the validation works. 
Does it perform an LDAP equivalent of {{SELECT 1}} - or just check if the 
connection is valid. Can this be configured (e.g. a "I think I'm connected" may 
be sufficient for some use cases, "I think I'm connected and the server is 
responding" for others).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to