How can I turn off LDAP connection pooling in JIRA?
Programmatically, this is normally done in Java as follows:
Hashtable<String, String> env = new Hashtable<>(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); env.put(Context.PROVIDER_URL, "ldap://my.ldap.server:389"); env.put("com.sun.jndi.ldap.connect.pool", "false"); DirContext ctx = new InitialDirContext(env); // use ctx to run LDAP queries
The important thing to note is that com.sun.jndi.ldap.connect.pool is not a VM argument. Ie launching the JVM with it passed in has no effect. With this in mind, how can I get JIRA to supply com.sun.jndi.ldap.connect.pool=false to the InitialDirContext constructor?
Thanks!
The important thing to note is that com.sun.jndi.ldap.connect.pool is not a VM argument.
However, some of the settings are according to Oracle JVM docs:
http://docs.oracle.com/javase/jndi/tutorial/ldap/connect/config.html
You may be able to set one of these to a value that precludes pooling from being allowed for your connections?
In particular I am thinking:
Okay, it turns out that this does work! It does seem a bit of a "hack", but I'll take it! Here is the output from netstat:
[root@jira01 ~]# netstat -ap | grep ldap tcp 0 0 ::ffff:172.24.102.15:42130 ::ffff:146.195.128.254:ldap TIME_WAIT - tcp 0 0 ::ffff:172.24.102.15:42129 ::ffff:146.195.128.254:ldap TIME_WAIT -
(Previously, I had a bunch of ESTABLISHED connections with PIDs at the end.)
For anyone else reading this, I added the following to setenv.sh:
JAVA_OPTS="${JAVA_OPTS} -Dcom.sun.jndi.ldap.connect.pool.protocol=DIGEST-MD5"
It would be nice if there was a more official way to turn off LDAP connection pooling in JIRA/Crowd. Should I raise a ticket with Atlassian support for this?
Thanks again!
-Muel
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Currently JIRA does not provide any way to turn off LDAP conneciton pooling.
According to the Crowd documentation this is available in the Crowd server:
https://confluence.atlassian.com/display/CROWD/Configuring+the+LDAP+Connection+Pool
So in theory you should be able to connect JIRA to Crowd and Crowd to LDAP and turn off the pooling in the Crowd server. However, reading the Oracle docs and the Crowd source code, I am not sure if this will actually work ... please test first if you want to try this.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Currently there is no
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.