Hello everyone,

I am testing LSC 2.0.2 under Redhat Enterprise Linux 5.7 and JDK 1.7 and also 
JDK 1.6 (both from Oracle, 64-bit).
I am syncing an Oracle database with about 600,000 entries to LDAP.
What happens is that the job always terminates with an out of memory exception 
as follows:

Exception in thread "main" java.lang.OutOfMemoryError: unable to create new 
native thread
        at java.lang.Thread.start0(Native Method)
        at java.lang.Thread.start(Thread.java:691)
        at 
java.util.concurrent.ThreadPoolExecutor.addWorker(ThreadPoolExecutor.java:943)
        at 
java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1336)
        at 
org.lsc.SynchronizeThreadPoolExecutor.runTask(SynchronizeThreadPoolExecutor.java:44)
        at 
org.lsc.AbstractSynchronize.synchronize2Ldap(AbstractSynchronize.java:333)
        at org.lsc.SimpleSynchronize.launchTask(SimpleSynchronize.java:220)
        at org.lsc.SimpleSynchronize.launch(SimpleSynchronize.java:157)
        at org.lsc.Launcher.run(Launcher.java:224)
        at org.lsc.Launcher.launch(Launcher.java:159)
        at org.lsc.Launcher.main(Launcher.java:142)

I attempted to monitor the lsc process while it was running and noticed the 
following:

watch -n 5 -d "ps -eL <pid> | wc -l"

The number of threads being spawned increased all the way from 108 to around 
30,000 before the
lsc process crashed and threw the exception above. Increasing the memory to the 
JVM via -Xmx had
no helpful effect.

Is there some way to tune the maximum number of threads that LSC uses or is 
this a known issue
with large synchronizations? Thanks in advance for any advice.

Kind regards,

Ven
_______________________________________________________________
Ldap Synchronization Connector (LSC) - http://lsc-project.org

lsc-users mailing list
[email protected]
http://lists.lsc-project.org/listinfo/lsc-users

Reply via email to