directory-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Philip Colmer <philip.col...@linaro.org>
Subject Re: Apache Directory Studio getting "stuck" on opening LDAP connection login
Date Mon, 25 Jan 2016 08:50:15 GMT
Hi Stefan

I've managed to get a thread dump for you.

Regards

Philip

2016-01-25 08:48:55
Full thread dump Java HotSpot(TM) Client VM (25.71-b15 mixed mode, sharing):

"[ThreadPool Manager] - Idle Thread" #33 daemon prio=5 os_prio=0
tid=0x17867000 nid=0x3364 in Object.wait() [0x21bdf000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x0c13db68> (a
org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor)
        at java.lang.Object.wait(Unknown Source)
        at org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor.run(Executor.java:106)
        - locked <0x0c13db68> (a
org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor)

"NioProcessor-1" #32 prio=5 os_prio=0 tid=0x1786ac00 nid=0x2228
runnable [0x2189f000]
   java.lang.Thread.State: RUNNABLE
        at org.apache.mina.filter.ssl.SslHandler.unwrap(SslHandler.java:752)
        at org.apache.mina.filter.ssl.SslHandler.messageReceived(SslHandler.java:359)
        at org.apache.mina.filter.ssl.SslFilter.messageReceived(SslFilter.java:489)
        - locked <0x0bd41e38> (a org.apache.mina.filter.ssl.SslHandler)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:542)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:48)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:943)
        at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:109)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:542)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:535)
        at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:718)
        at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:672)
        at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:661)
        at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$600(AbstractPollingIoProcessor.java:68)
        at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:1130)
        at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)

"Worker-4" #30 prio=5 os_prio=0 tid=0x1786d800 nid=0x2c28 in
Object.wait() [0x2136f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x0a521810> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
        - locked <0x0a521810> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

"org.eclipse.jface.text.reconciler.MonoReconciler" #28 daemon prio=1
os_prio=-2 tid=0x17866c00 nid=0x918 in Object.wait() [0x20e5f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x0bc42268> (a
org.eclipse.jface.text.reconciler.DirtyRegionQueue)
        at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:179)
        - locked <0x0bc42268> (a
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jface.text.reconciler.MonoReconciler" #27 daemon prio=1
os_prio=-2 tid=0x17868400 nid=0x27f8 in Object.wait() [0x20d1f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x0bc423f8> (a
org.eclipse.jface.text.reconciler.DirtyRegionQueue)
        at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:179)
        - locked <0x0bc423f8> (a
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"Worker-2" #26 prio=5 os_prio=0 tid=0x17952c00 nid=0x1c10 in
Object.wait() [0x1f9af000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x0a521810> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
        - locked <0x0a521810> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

"Worker-1" #25 prio=5 os_prio=0 tid=0x17954800 nid=0x2844 waiting on
condition [0x1f61f000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x0c045b28> (a
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
        at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown
Source)
        at java.util.concurrent.LinkedBlockingQueue.poll(Unknown Source)
        at org.apache.directory.ldap.client.api.future.ResponseFuture.get(ResponseFuture.java:130)
        at org.apache.directory.ldap.client.api.future.SearchFuture.get(SearchFuture.java:69)
        at org.apache.directory.ldap.client.api.SearchCursorImpl.next(SearchCursorImpl.java:119)
        at org.apache.directory.studio.connection.core.io.api.CursorStudioNamingEnumeration.hasMore(CursorStudioNamingEnumeration.java:141)
        at org.apache.directory.studio.ldapbrowser.core.jobs.ExportLdifRunnable$JndiLdifEnumeration.hasNext(ExportLdifRunnable.java:276)
        at org.apache.directory.studio.ldapbrowser.core.jobs.ReloadSchemaRunnable.reloadSchema(ReloadSchemaRunnable.java:174)
        at org.apache.directory.studio.ldapbrowser.core.BrowserConnectionListener.openBrowserConnection(BrowserConnectionListener.java:114)
        at org.apache.directory.studio.ldapbrowser.core.BrowserConnectionListener.connectionOpened(BrowserConnectionListener.java:64)
        at org.apache.directory.studio.connection.core.jobs.OpenConnectionsRunnable.runNotification(OpenConnectionsRunnable.java:132)
        at org.apache.directory.studio.connection.core.jobs.StudioConnectionJob.run(StudioConnectionJob.java:115)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

"EventAdmin Async Event Dispatcher Thread" #24 daemon prio=6 os_prio=0
tid=0x17954000 nid=0x24a4 in Object.wait() [0x1e3ff000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x0b220ef0> (a
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
        at java.lang.Object.wait(Unknown Source)
        at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
        - locked <0x0b220ef0> (a
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
        at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

"Bundle File Closer" #22 daemon prio=6 os_prio=0 tid=0x17953c00
nid=0x28d4 in Object.wait() [0x18c4f000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x0aa34200> (a
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
        at java.lang.Object.wait(Unknown Source)
        at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
        - locked <0x0aa34200> (a
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
        at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

"Worker-0" #20 prio=5 os_prio=0 tid=0x17761400 nid=0x3a70 waiting on
condition [0x1865f000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
        at java.lang.Thread.sleep(Native Method)
        at org.apache.directory.studio.common.core.jobs.StudioProgressMonitorWatcherJob.run(StudioProgressMonitorWatcherJob.java:126)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

"EMF Reference Cleaner" #19 daemon prio=5 os_prio=0 tid=0x16ab5800
nid=0xbe8 in Object.wait() [0x175cf000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x0a6f3368> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(Unknown Source)
        - locked <0x0a6f3368> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(Unknown Source)
        at org.eclipse.emf.common.util.CommonUtil$1ReferenceClearingQueuePollingThread.run(CommonUtil.java:70)

"Worker-JM" #15 prio=5 os_prio=0 tid=0x16938c00 nid=0x21f4 in
Object.wait() [0x173cf000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x0a4cdb18> (a java.util.ArrayList)
        at org.eclipse.core.internal.jobs.InternalWorker.run(InternalWorker.java:59)
        - locked <0x0a4cdb18> (a java.util.ArrayList)

"[Timer] - Main Queue Handler" #14 daemon prio=5 os_prio=0
tid=0x16814c00 nid=0x28b4 in Object.wait() [0x170af000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x0a48ea70> (a java.lang.Object)
        at org.eclipse.equinox.internal.util.impl.tpt.timer.TimerImpl.run(TimerImpl.java:141)
        - locked <0x0a48ea70> (a java.lang.Object)
        at java.lang.Thread.run(Unknown Source)

"Start Level: Equinox Container: e0aef238-40c3-0015-1016-9350f013791d"
#12 daemon prio=5 os_prio=0 tid=0x167f6400 nid=0x327c in Object.wait()
[0x16e2f000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x0a48eb20> (a
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
        at java.lang.Object.wait(Unknown Source)
        at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
        - locked <0x0a48eb20> (a
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
        at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

"Framework Event Dispatcher: Equinox Container:
e0aef238-40c3-0015-1016-9350f013791d" #11 daemon prio=5 os_prio=0
tid=0x167f0800 nid=0x39c4 in Object.wait() [0x16cef000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x0a48ecc0> (a
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
        at java.lang.Object.wait(Unknown Source)
        at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
        - locked <0x0a48ecc0> (a
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
        at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

"Active Thread: Equinox Container:
e0aef238-40c3-0015-1016-9350f013791d" #9 prio=5 os_prio=0
tid=0x164d9400 nid=0x3b08 waiting on condition [0x167af000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x0a421ff8> (a
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
        at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown
Source)
        at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown
Source)
        at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown
Source)
        at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)

"Service Thread" #7 daemon prio=9 os_prio=0 tid=0x02547400 nid=0x330
runnable [0x00000000]
   java.lang.Thread.State: RUNNABLE

"C1 CompilerThread0" #6 daemon prio=9 os_prio=2 tid=0x02528800
nid=0x15ac waiting on condition [0x00000000]
   java.lang.Thread.State: RUNNABLE

"Attach Listener" #5 daemon prio=5 os_prio=2 tid=0x02527400 nid=0x3340
waiting on condition [0x00000000]
   java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" #4 daemon prio=9 os_prio=2 tid=0x02525400
nid=0x1f10 runnable [0x00000000]
   java.lang.Thread.State: RUNNABLE

"Finalizer" #3 daemon prio=8 os_prio=1 tid=0x02516c00 nid=0x2094 in
Object.wait() [0x15b6f000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x09db7748> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(Unknown Source)
        - locked <0x09db7748> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(Unknown Source)
        at java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)

"Reference Handler" #2 daemon prio=10 os_prio=2 tid=0x02515400
nid=0x1370 in Object.wait() [0x15a6f000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x09db78e8> (a java.lang.ref.Reference$Lock)
        at java.lang.Object.wait(Unknown Source)
        at java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)
        - locked <0x09db78e8> (a java.lang.ref.Reference$Lock)

"main" #1 prio=6 os_prio=0 tid=0x026cb800 nid=0x1bcc runnable [0x0019f000]
   java.lang.Thread.State: RUNNABLE
        at org.eclipse.swt.internal.win32.OS.WaitMessage(Native Method)
        at org.eclipse.swt.widgets.Display.sleep(Display.java:4701)
        at org.eclipse.ui.application.WorkbenchAdvisor.eventLoopIdle(WorkbenchAdvisor.java:368)
        at org.eclipse.ui.internal.Workbench$3.eventLoopIdle(Workbench.java:498)
        at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1155)
        at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
        at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
        at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
        at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
        at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
        at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
        at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
        at org.apache.directory.studio.Application.start(Application.java:51)
        at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
        at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
        at org.eclipse.equinox.launcher.Main.run(Main.java:1465)

"VM Thread" os_prio=2 tid=0x02512000 nid=0x2fdc runnable

"VM Periodic Task Thread" os_prio=2 tid=0x0255e800 nid=0x3670 waiting
on condition

JNI global references: 475

On 20 January 2016 at 19:57, Stefan Seelmann <mail@stefan-seelmann.de> wrote:
> On 01/19/2016 10:25 AM, Philip Colmer wrote:
>> Switching to JNDI *does* fix the problem.
>
> Could you tell me which LDAP server you try to connect to? Is it Active
> Directory? And are you connecting via LDAPS?
>
> If possible, can you switch back to Apache LDAP API, make it stuck
> again, and create a thread dump? To create a thread dump you need a to
> have the JDK installed. Then from commandline you can first use "jps" to
> get PIDs of Java processes, then use "jstack <pid>" to generate the
> thread dump. I just want to know if it gets stuck while communicating
> with the server, or if some Studio code is the cause.
>
> I'm asking because Radovan found an issue with Mina (the framework we
> use in LDAP API) that describes your problem[1].
>
> Kind Regards,
> Stefan
>
> [1]
> https://mail-archives.apache.org/mod_mbox/directory-dev/201601.mbox/%3C569FD0EC.8050203%40evolveum.com%3E
>
>

Mime
View raw message