directory-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kiran Ayyagari <>
Subject Re: Threads issue
Date Fri, 28 Nov 2014 01:16:01 GMT
On Fri, Nov 28, 2014 at 7:06 AM, S├ębastien Bahloul <> wrote:

> To Apache LDAP API guys,
> First, thank you because we are successfully using Apache LDAP API in Ldap
> Synchronization Connector Open Source project (build 1.0.0-M22). But I
> encountered an error that seems to be linked to its usage. That's probably
> because we are using it in a wrong way, but I cannot figured why. Let me
> introduce the use case: LSC is providing synchronization services based on
> a source to a destination. Source can be a LDAP directory and there is a
> mode to run it as a daemon. It's using LDAP Content Synchronization
> Protocol to attach it to an OpenLDAP directory and to be able to catch
> updated entries to sync them to a destination (database, another directory,
> ...). In this configuration, after 1,5 hour the JVM is throwing an
> OutOfMemory error with "unable to create new native threads". You will find
> below a pastebin to the thread dump that have been generated each 15
> minutes which mainly shows thread pool tasks. The fact is LSC is using its
> own thread pool, but my understanding of the thread dump is that most
> threads are linked to MINA and to other threads WAITING for MINA threads.
> check if you are not explicitly closing the connections using close()
If the problem persists can you provide us a testcase?

> The source code that create LDAP connection through LDAP Apache API and
> launches asynchronous search can be found at the following location:
> There's no direct use of Apache LDAP API in the rest of the project (we are
> also using JNDI). If you have any idea of the reason why we are
> encountering such issue or at least a method to identify it, it would be
> welcomed :)
> The exception:
> Exception in thread "pool-1974-thread-1" java.lang.OutOfMemoryError: unable
> to create new native thread
> at java.lang.Thread.start0(Native Method)
> at java.lang.Thread.start(Unknown Source)
> at java.util.concurrent.ThreadPoolExecutor.addWorker(Unknown Source)
> at java.util.concurrent.ThreadPoolExecutor.processWorkerExit(Unknown
> Source)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
> at java.util.concurrent.ThreadPoolExecutor$ Source)
> at Source)
> Exception in thread "Sync" java.lang.NullPointerException
> at
> org.lsc.service.SyncReplSourceService.getNextId(
> at
> at Source)
> Sebastien BAHLOUL
> IAM / Security specialist
> Ldap Synchronization Connector :
> Blog :

Kiran Ayyagari

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message