directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stefan Seelmann (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DIRSTUDIO-1039) SWTBot test suite hangs on opening connection
Date Sun, 26 Apr 2015 13:07:38 GMT

    [ https://issues.apache.org/jira/browse/DIRSTUDIO-1039?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14513027#comment-14513027
] 

Stefan Seelmann commented on DIRSTUDIO-1039:
--------------------------------------------

I think I found the problem. The search is done in one thread and in another thread the connection
is closed. When closing the connection in Studio we first do an LdapNetworkConnection.unBind()
and then an LdapNetworkConnection.close(). Maybe that is not the right procedure, but nevertheless
an currently running SearchCursorImpl.next() blocks. I'll try to create an isolated testcase.

> SWTBot test suite hangs on opening connection
> ---------------------------------------------
>
>                 Key: DIRSTUDIO-1039
>                 URL: https://issues.apache.org/jira/browse/DIRSTUDIO-1039
>             Project: Directory Studio
>          Issue Type: Bug
>          Components: studio-connection
>            Reporter: Stefan Seelmann
>             Fix For: 2.0.0-M9
>
>
> When running the SWTBot test suite it get stuck at some point.
> Evidence:
> * Below is one thread of the thread dump. 
> * The default time limit of a connection in Studio is 0 by default, which in the API
is converterted to Long.MAX_VALUE ms. So the ResponseFuture.get() blocks practically forever.
> * This only happens when running the whole test suite, but then it is reproducable. When
running only parts of the suite it runs through.
> First steps:
> * I'll try change the default time limit to 30 seconds.
> {noformat}
> "Worker-3" #54 prio=5 os_prio=0 tid=0x00007ff30c01e800 nid=0x61c0 waiting on condition
[0x00007ff279819000]
>    java.lang.Thread.State: TIMED_WAITING (parking)
>         at sun.misc.Unsafe.park(Native Method)
>         - parking to wait for  <0x00000000fb861930> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
>         at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
>         at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
>         at java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467)
>         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.SearchRunnable.searchAndUpdateModel(SearchRunnable.java:321)
>         at org.apache.directory.studio.ldapbrowser.core.jobs.InitializeRootDSERunnable.initBaseEntry(InitializeRootDSERunnable.java:380)
>         at org.apache.directory.studio.ldapbrowser.core.jobs.InitializeRootDSERunnable.loadRootDSE(InitializeRootDSERunnable.java:310)
>         - locked <0x000000008b304e78> (a java.lang.Class for org.apache.directory.studio.ldapbrowser.core.jobs.InitializeRootDSERunnable)
>         at org.apache.directory.studio.ldapbrowser.core.jobs.InitializeAttributesRunnable.initializeAttributes(InitializeAttributesRunnable.java:226)
>         - locked <0x000000008b3170b8> (a java.lang.Class for org.apache.directory.studio.ldapbrowser.core.jobs.InitializeAttributesRunnable)
>         at org.apache.directory.studio.ldapbrowser.core.jobs.InitializeAttributesRunnable.initializeAttributes(InitializeAttributesRunnable.java:204)
>         - locked <0x000000008b3170b8> (a java.lang.Class for org.apache.directory.studio.ldapbrowser.core.jobs.InitializeAttributesRunnable)
>         at org.apache.directory.studio.ldapbrowser.core.BrowserConnectionListener.openBrowserConnection(BrowserConnectionListener.java:117)
>         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)
> {noformat}



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

Mime
View raw message