You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by Rob Godfrey <ro...@gmail.com> on 2013/03/18 13:19:09 UTC

[Java] Deadlock running Java tests

Anyone seen this deadlock (running
org.apache.qpid.systest.rest.BasicAuthRestTest) before?

It's in a checkout where I've been making changes, but none that I
think would affect this code:

    [junit] Found one Java-level deadlock:
    [junit] =============================
    [junit] "qtp1606963758-5404":
    [junit]   waiting to lock monitor 0x00007f6cf00517d8 (object
0x00000000f847cf10, a sun.security.ssl.SSLSocketImpl),
    [junit]   which is held by "Broker-Configuration-Thread"
    [junit] "Broker-Configuration-Thread":
    [junit]   waiting for ownable synchronizer 0x00000000f847d0c0, (a
java.util.concurrent.locks.ReentrantLock$NonfairSync),
    [junit]   which is held by "qtp1606963758-5404"
    [junit]
    [junit] Java stack information for the threads listed above:
    [junit] ===================================================
    [junit] "qtp1606963758-5404":
    [junit] 	at
sun.security.ssl.SSLSocketImpl.getConnectionState(SSLSocketImpl.java:649)
    [junit] 	- waiting to lock <0x00000000f847cf10> (a
sun.security.ssl.SSLSocketImpl)
    [junit] 	at sun.security.ssl.SSLSocketImpl.isClosed(SSLSocketImpl.java:1462)
    [junit] 	at java.net.Socket.getTcpNoDelay(Socket.java:953)
    [junit] 	at
sun.security.ssl.BaseSSLSocketImpl.getTcpNoDelay(BaseSSLSocketImpl.java:345)
    [junit] 	at
sun.security.ssl.SSLSocketImpl.writeRecordInternal(SSLSocketImpl.java:819)
    [junit] 	at
sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:801)
    [junit] 	at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:122)
    [junit] 	- locked <0x00000000f848aca0> (a sun.security.ssl.AppOutputStream)
    [junit] 	at
org.eclipse.jetty.io.ByteArrayBuffer.writeTo(ByteArrayBuffer.java:354)
    [junit] 	at
org.eclipse.jetty.io.bio.StreamEndPoint.flush(StreamEndPoint.java:159)
    [junit] 	at
org.eclipse.jetty.io.bio.StreamEndPoint.flush(StreamEndPoint.java:189)
    [junit] 	at
org.eclipse.jetty.http.HttpGenerator.flushBuffer(HttpGenerator.java:876)
    [junit] 	at
org.eclipse.jetty.http.HttpGenerator.complete(HttpGenerator.java:836)
    [junit] 	at
org.eclipse.jetty.server.AbstractHttpConnection.commitResponse(AbstractHttpConnection.java:576)
    [junit] 	at
org.eclipse.jetty.server.AbstractHttpConnection$Output.close(AbstractHttpConnection.java:999)
    [junit] 	at org.eclipse.jetty.server.HttpWriter.close(HttpWriter.java:80)
    [junit] 	at
org.eclipse.jetty.server.AbstractHttpConnection$1.close(AbstractHttpConnection.java:372)
    [junit] 	- locked <0x00000000f8838678> (a
org.eclipse.jetty.server.AbstractHttpConnection$OutputWriter)
    [junit] 	at java.io.BufferedWriter.close(BufferedWriter.java:266)
    [junit] 	- locked <0x00000000f88386a8> (a
org.eclipse.jetty.server.AbstractHttpConnection$1)
    [junit] 	at
org.codehaus.jackson.impl.WriterBasedGenerator.close(WriterBasedGenerator.java:944)
    [junit] 	at
org.codehaus.jackson.map.ObjectMapper._configAndWriteValue(ObjectMapper.java:2568)
    [junit] 	at
org.codehaus.jackson.map.ObjectMapper.writeValue(ObjectMapper.java:2072)
    [junit] 	at
org.apache.qpid.server.management.plugin.servlet.rest.RestServlet.doGetWithSubjectAndActor(RestServlet.java:310)
 ...
    [junit] "Broker-Configuration-Thread":
    [junit] 	at sun.misc.Unsafe.park(Native Method)
    [junit] 	- parking to wait for  <0x00000000f847d0c0> (a
java.util.concurrent.locks.ReentrantLock$NonfairSync)
    [junit] 	at
java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
    [junit] 	at
java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
    [junit] 	at
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:867)
    [junit] 	at
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1197)
    [junit] 	at
java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:214)
    [junit] 	at
java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:290)
    [junit] 	at
sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:799)
    [junit] 	at
sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:672)
    [junit] 	at
sun.security.ssl.SSLSocketImpl.sendAlert(SSLSocketImpl.java:2023)
    [junit] 	at sun.security.ssl.SSLSocketImpl.warning(SSLSocketImpl.java:1850)
    [junit] 	at
sun.security.ssl.SSLSocketImpl.closeInternal(SSLSocketImpl.java:1618)
    [junit] 	- locked <0x00000000f847cf10> (a sun.security.ssl.SSLSocketImpl)
    [junit] 	at sun.security.ssl.SSLSocketImpl.close(SSLSocketImpl.java:1554)
    [junit] 	at
org.eclipse.jetty.io.bio.SocketEndPoint.close(SocketEndPoint.java:156)
    [junit] 	at
org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.close(SocketConnector.java:233)
    [junit] 	at
org.eclipse.jetty.server.ssl.SslSocketConnector$SslConnectorEndPoint.close(SslSocketConnector.java:613)
    [junit] 	at
org.eclipse.jetty.server.bio.SocketConnector.doStop(SocketConnector.java:167)
    [junit] 	at
org.eclipse.jetty.server.ssl.SslSocketConnector.doStop(SslSocketConnector.java:371)
    [junit] 	at
org.eclipse.jetty.util.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:84)
    [junit] 	- locked <0x00000000f83bebd8> (a java.lang.Object)
    [junit] 	at org.eclipse.jetty.server.Server.doStop(Server.java:318)
    [junit] 	at
org.eclipse.jetty.util.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:84)
    [junit] 	- locked <0x00000000f83be2a8> (a java.lang.Object)
    [junit] 	at
org.apache.qpid.server.management.plugin.HttpManagement.stop(HttpManagement.java:187)
    [junit] 	at
org.apache.qpid.server.management.plugin.HttpManagement.setState(HttpManagement.java:156)
    [junit] 	at
org.apache.qpid.server.model.adapter.AbstractAdapter.setDesiredState(AbstractAdapter.java:88)
    [junit] 	at
org.apache.qpid.server.model.adapter.BrokerAdapter.changeState(BrokerAdapter.java:776)
    [junit] 	- locked <0x00000000f7c34408> (a java.util.HashMap)
    [junit] 	at
org.apache.qpid.server.model.adapter.BrokerAdapter.setState(BrokerAdapter.java:749)
    [junit] 	at
org.apache.qpid.server.model.adapter.AbstractAdapter.setDesiredState(AbstractAdapter.java:88)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Re: [Java] Deadlock running Java tests

Posted by Oleksandr Rudyy <or...@gmail.com>.
Hi Rob,

I was able to reproduce the issue with JDK 1.7.0_14 when running
BasicAuthRestTest in a cycle. However, I was not able to reproduce it
with JDK 1.6.0_33 by running the same tests during a period of 2 days.

I raised a JIRA QPID-4660 for the issue.

Kind Regards,
Alex

On 18 March 2013 17:24, Rob Godfrey <ro...@gmail.com> wrote:
> Running jdk1.7.0_06.
>
> I've not seen it before either, and have not been able to reproduce.
> None of my local changes touch the areas being exercised, so I don't
> think it was down to them.  Curious.
>
> -- Rob
>
> On 18 March 2013 18:09, Oleksandr Rudyy <or...@gmail.com> wrote:
>> Hi Rob,
>>
>> I have not seen this issue.
>> Also, I tried to reproduce the issue by running the BasicAuthRestTest
>> in a cycle but could not reproduce it during 1 hour of running. I
>> continue running the test.
>>
>> Could you please clarify what is the version of JVM you are using?
>>
>> Alex
>>
>> On 18 March 2013 12:19, Rob Godfrey <ro...@gmail.com> wrote:
>>> Anyone seen this deadlock (running
>>> org.apache.qpid.systest.rest.BasicAuthRestTest) before?
>>>
>>> It's in a checkout where I've been making changes, but none that I
>>> think would affect this code:
>>>
>>>     [junit] Found one Java-level deadlock:
>>>     [junit] =============================
>>>     [junit] "qtp1606963758-5404":
>>>     [junit]   waiting to lock monitor 0x00007f6cf00517d8 (object
>>> 0x00000000f847cf10, a sun.security.ssl.SSLSocketImpl),
>>>     [junit]   which is held by "Broker-Configuration-Thread"
>>>     [junit] "Broker-Configuration-Thread":
>>>     [junit]   waiting for ownable synchronizer 0x00000000f847d0c0, (a
>>> java.util.concurrent.locks.ReentrantLock$NonfairSync),
>>>     [junit]   which is held by "qtp1606963758-5404"
>>>     [junit]
>>>     [junit] Java stack information for the threads listed above:
>>>     [junit] ===================================================
>>>     [junit] "qtp1606963758-5404":
>>>     [junit]     at
>>> sun.security.ssl.SSLSocketImpl.getConnectionState(SSLSocketImpl.java:649)
>>>     [junit]     - waiting to lock <0x00000000f847cf10> (a
>>> sun.security.ssl.SSLSocketImpl)
>>>     [junit]     at sun.security.ssl.SSLSocketImpl.isClosed(SSLSocketImpl.java:1462)
>>>     [junit]     at java.net.Socket.getTcpNoDelay(Socket.java:953)
>>>     [junit]     at
>>> sun.security.ssl.BaseSSLSocketImpl.getTcpNoDelay(BaseSSLSocketImpl.java:345)
>>>     [junit]     at
>>> sun.security.ssl.SSLSocketImpl.writeRecordInternal(SSLSocketImpl.java:819)
>>>     [junit]     at
>>> sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:801)
>>>     [junit]     at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:122)
>>>     [junit]     - locked <0x00000000f848aca0> (a sun.security.ssl.AppOutputStream)
>>>     [junit]     at
>>> org.eclipse.jetty.io.ByteArrayBuffer.writeTo(ByteArrayBuffer.java:354)
>>>     [junit]     at
>>> org.eclipse.jetty.io.bio.StreamEndPoint.flush(StreamEndPoint.java:159)
>>>     [junit]     at
>>> org.eclipse.jetty.io.bio.StreamEndPoint.flush(StreamEndPoint.java:189)
>>>     [junit]     at
>>> org.eclipse.jetty.http.HttpGenerator.flushBuffer(HttpGenerator.java:876)
>>>     [junit]     at
>>> org.eclipse.jetty.http.HttpGenerator.complete(HttpGenerator.java:836)
>>>     [junit]     at
>>> org.eclipse.jetty.server.AbstractHttpConnection.commitResponse(AbstractHttpConnection.java:576)
>>>     [junit]     at
>>> org.eclipse.jetty.server.AbstractHttpConnection$Output.close(AbstractHttpConnection.java:999)
>>>     [junit]     at org.eclipse.jetty.server.HttpWriter.close(HttpWriter.java:80)
>>>     [junit]     at
>>> org.eclipse.jetty.server.AbstractHttpConnection$1.close(AbstractHttpConnection.java:372)
>>>     [junit]     - locked <0x00000000f8838678> (a
>>> org.eclipse.jetty.server.AbstractHttpConnection$OutputWriter)
>>>     [junit]     at java.io.BufferedWriter.close(BufferedWriter.java:266)
>>>     [junit]     - locked <0x00000000f88386a8> (a
>>> org.eclipse.jetty.server.AbstractHttpConnection$1)
>>>     [junit]     at
>>> org.codehaus.jackson.impl.WriterBasedGenerator.close(WriterBasedGenerator.java:944)
>>>     [junit]     at
>>> org.codehaus.jackson.map.ObjectMapper._configAndWriteValue(ObjectMapper.java:2568)
>>>     [junit]     at
>>> org.codehaus.jackson.map.ObjectMapper.writeValue(ObjectMapper.java:2072)
>>>     [junit]     at
>>> org.apache.qpid.server.management.plugin.servlet.rest.RestServlet.doGetWithSubjectAndActor(RestServlet.java:310)
>>>  ...
>>>     [junit] "Broker-Configuration-Thread":
>>>     [junit]     at sun.misc.Unsafe.park(Native Method)
>>>     [junit]     - parking to wait for  <0x00000000f847d0c0> (a
>>> java.util.concurrent.locks.ReentrantLock$NonfairSync)
>>>     [junit]     at
>>> java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
>>>     [junit]     at
>>> java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
>>>     [junit]     at
>>> java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:867)
>>>     [junit]     at
>>> java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1197)
>>>     [junit]     at
>>> java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:214)
>>>     [junit]     at
>>> java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:290)
>>>     [junit]     at
>>> sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:799)
>>>     [junit]     at
>>> sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:672)
>>>     [junit]     at
>>> sun.security.ssl.SSLSocketImpl.sendAlert(SSLSocketImpl.java:2023)
>>>     [junit]     at sun.security.ssl.SSLSocketImpl.warning(SSLSocketImpl.java:1850)
>>>     [junit]     at
>>> sun.security.ssl.SSLSocketImpl.closeInternal(SSLSocketImpl.java:1618)
>>>     [junit]     - locked <0x00000000f847cf10> (a sun.security.ssl.SSLSocketImpl)
>>>     [junit]     at sun.security.ssl.SSLSocketImpl.close(SSLSocketImpl.java:1554)
>>>     [junit]     at
>>> org.eclipse.jetty.io.bio.SocketEndPoint.close(SocketEndPoint.java:156)
>>>     [junit]     at
>>> org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.close(SocketConnector.java:233)
>>>     [junit]     at
>>> org.eclipse.jetty.server.ssl.SslSocketConnector$SslConnectorEndPoint.close(SslSocketConnector.java:613)
>>>     [junit]     at
>>> org.eclipse.jetty.server.bio.SocketConnector.doStop(SocketConnector.java:167)
>>>     [junit]     at
>>> org.eclipse.jetty.server.ssl.SslSocketConnector.doStop(SslSocketConnector.java:371)
>>>     [junit]     at
>>> org.eclipse.jetty.util.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:84)
>>>     [junit]     - locked <0x00000000f83bebd8> (a java.lang.Object)
>>>     [junit]     at org.eclipse.jetty.server.Server.doStop(Server.java:318)
>>>     [junit]     at
>>> org.eclipse.jetty.util.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:84)
>>>     [junit]     - locked <0x00000000f83be2a8> (a java.lang.Object)
>>>     [junit]     at
>>> org.apache.qpid.server.management.plugin.HttpManagement.stop(HttpManagement.java:187)
>>>     [junit]     at
>>> org.apache.qpid.server.management.plugin.HttpManagement.setState(HttpManagement.java:156)
>>>     [junit]     at
>>> org.apache.qpid.server.model.adapter.AbstractAdapter.setDesiredState(AbstractAdapter.java:88)
>>>     [junit]     at
>>> org.apache.qpid.server.model.adapter.BrokerAdapter.changeState(BrokerAdapter.java:776)
>>>     [junit]     - locked <0x00000000f7c34408> (a java.util.HashMap)
>>>     [junit]     at
>>> org.apache.qpid.server.model.adapter.BrokerAdapter.setState(BrokerAdapter.java:749)
>>>     [junit]     at
>>> org.apache.qpid.server.model.adapter.AbstractAdapter.setDesiredState(AbstractAdapter.java:88)
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
>>> For additional commands, e-mail: dev-help@qpid.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
>> For additional commands, e-mail: dev-help@qpid.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
> For additional commands, e-mail: dev-help@qpid.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Re: [Java] Deadlock running Java tests

Posted by Rob Godfrey <ro...@gmail.com>.
Running jdk1.7.0_06.

I've not seen it before either, and have not been able to reproduce.
None of my local changes touch the areas being exercised, so I don't
think it was down to them.  Curious.

-- Rob

On 18 March 2013 18:09, Oleksandr Rudyy <or...@gmail.com> wrote:
> Hi Rob,
>
> I have not seen this issue.
> Also, I tried to reproduce the issue by running the BasicAuthRestTest
> in a cycle but could not reproduce it during 1 hour of running. I
> continue running the test.
>
> Could you please clarify what is the version of JVM you are using?
>
> Alex
>
> On 18 March 2013 12:19, Rob Godfrey <ro...@gmail.com> wrote:
>> Anyone seen this deadlock (running
>> org.apache.qpid.systest.rest.BasicAuthRestTest) before?
>>
>> It's in a checkout where I've been making changes, but none that I
>> think would affect this code:
>>
>>     [junit] Found one Java-level deadlock:
>>     [junit] =============================
>>     [junit] "qtp1606963758-5404":
>>     [junit]   waiting to lock monitor 0x00007f6cf00517d8 (object
>> 0x00000000f847cf10, a sun.security.ssl.SSLSocketImpl),
>>     [junit]   which is held by "Broker-Configuration-Thread"
>>     [junit] "Broker-Configuration-Thread":
>>     [junit]   waiting for ownable synchronizer 0x00000000f847d0c0, (a
>> java.util.concurrent.locks.ReentrantLock$NonfairSync),
>>     [junit]   which is held by "qtp1606963758-5404"
>>     [junit]
>>     [junit] Java stack information for the threads listed above:
>>     [junit] ===================================================
>>     [junit] "qtp1606963758-5404":
>>     [junit]     at
>> sun.security.ssl.SSLSocketImpl.getConnectionState(SSLSocketImpl.java:649)
>>     [junit]     - waiting to lock <0x00000000f847cf10> (a
>> sun.security.ssl.SSLSocketImpl)
>>     [junit]     at sun.security.ssl.SSLSocketImpl.isClosed(SSLSocketImpl.java:1462)
>>     [junit]     at java.net.Socket.getTcpNoDelay(Socket.java:953)
>>     [junit]     at
>> sun.security.ssl.BaseSSLSocketImpl.getTcpNoDelay(BaseSSLSocketImpl.java:345)
>>     [junit]     at
>> sun.security.ssl.SSLSocketImpl.writeRecordInternal(SSLSocketImpl.java:819)
>>     [junit]     at
>> sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:801)
>>     [junit]     at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:122)
>>     [junit]     - locked <0x00000000f848aca0> (a sun.security.ssl.AppOutputStream)
>>     [junit]     at
>> org.eclipse.jetty.io.ByteArrayBuffer.writeTo(ByteArrayBuffer.java:354)
>>     [junit]     at
>> org.eclipse.jetty.io.bio.StreamEndPoint.flush(StreamEndPoint.java:159)
>>     [junit]     at
>> org.eclipse.jetty.io.bio.StreamEndPoint.flush(StreamEndPoint.java:189)
>>     [junit]     at
>> org.eclipse.jetty.http.HttpGenerator.flushBuffer(HttpGenerator.java:876)
>>     [junit]     at
>> org.eclipse.jetty.http.HttpGenerator.complete(HttpGenerator.java:836)
>>     [junit]     at
>> org.eclipse.jetty.server.AbstractHttpConnection.commitResponse(AbstractHttpConnection.java:576)
>>     [junit]     at
>> org.eclipse.jetty.server.AbstractHttpConnection$Output.close(AbstractHttpConnection.java:999)
>>     [junit]     at org.eclipse.jetty.server.HttpWriter.close(HttpWriter.java:80)
>>     [junit]     at
>> org.eclipse.jetty.server.AbstractHttpConnection$1.close(AbstractHttpConnection.java:372)
>>     [junit]     - locked <0x00000000f8838678> (a
>> org.eclipse.jetty.server.AbstractHttpConnection$OutputWriter)
>>     [junit]     at java.io.BufferedWriter.close(BufferedWriter.java:266)
>>     [junit]     - locked <0x00000000f88386a8> (a
>> org.eclipse.jetty.server.AbstractHttpConnection$1)
>>     [junit]     at
>> org.codehaus.jackson.impl.WriterBasedGenerator.close(WriterBasedGenerator.java:944)
>>     [junit]     at
>> org.codehaus.jackson.map.ObjectMapper._configAndWriteValue(ObjectMapper.java:2568)
>>     [junit]     at
>> org.codehaus.jackson.map.ObjectMapper.writeValue(ObjectMapper.java:2072)
>>     [junit]     at
>> org.apache.qpid.server.management.plugin.servlet.rest.RestServlet.doGetWithSubjectAndActor(RestServlet.java:310)
>>  ...
>>     [junit] "Broker-Configuration-Thread":
>>     [junit]     at sun.misc.Unsafe.park(Native Method)
>>     [junit]     - parking to wait for  <0x00000000f847d0c0> (a
>> java.util.concurrent.locks.ReentrantLock$NonfairSync)
>>     [junit]     at
>> java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
>>     [junit]     at
>> java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
>>     [junit]     at
>> java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:867)
>>     [junit]     at
>> java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1197)
>>     [junit]     at
>> java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:214)
>>     [junit]     at
>> java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:290)
>>     [junit]     at
>> sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:799)
>>     [junit]     at
>> sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:672)
>>     [junit]     at
>> sun.security.ssl.SSLSocketImpl.sendAlert(SSLSocketImpl.java:2023)
>>     [junit]     at sun.security.ssl.SSLSocketImpl.warning(SSLSocketImpl.java:1850)
>>     [junit]     at
>> sun.security.ssl.SSLSocketImpl.closeInternal(SSLSocketImpl.java:1618)
>>     [junit]     - locked <0x00000000f847cf10> (a sun.security.ssl.SSLSocketImpl)
>>     [junit]     at sun.security.ssl.SSLSocketImpl.close(SSLSocketImpl.java:1554)
>>     [junit]     at
>> org.eclipse.jetty.io.bio.SocketEndPoint.close(SocketEndPoint.java:156)
>>     [junit]     at
>> org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.close(SocketConnector.java:233)
>>     [junit]     at
>> org.eclipse.jetty.server.ssl.SslSocketConnector$SslConnectorEndPoint.close(SslSocketConnector.java:613)
>>     [junit]     at
>> org.eclipse.jetty.server.bio.SocketConnector.doStop(SocketConnector.java:167)
>>     [junit]     at
>> org.eclipse.jetty.server.ssl.SslSocketConnector.doStop(SslSocketConnector.java:371)
>>     [junit]     at
>> org.eclipse.jetty.util.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:84)
>>     [junit]     - locked <0x00000000f83bebd8> (a java.lang.Object)
>>     [junit]     at org.eclipse.jetty.server.Server.doStop(Server.java:318)
>>     [junit]     at
>> org.eclipse.jetty.util.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:84)
>>     [junit]     - locked <0x00000000f83be2a8> (a java.lang.Object)
>>     [junit]     at
>> org.apache.qpid.server.management.plugin.HttpManagement.stop(HttpManagement.java:187)
>>     [junit]     at
>> org.apache.qpid.server.management.plugin.HttpManagement.setState(HttpManagement.java:156)
>>     [junit]     at
>> org.apache.qpid.server.model.adapter.AbstractAdapter.setDesiredState(AbstractAdapter.java:88)
>>     [junit]     at
>> org.apache.qpid.server.model.adapter.BrokerAdapter.changeState(BrokerAdapter.java:776)
>>     [junit]     - locked <0x00000000f7c34408> (a java.util.HashMap)
>>     [junit]     at
>> org.apache.qpid.server.model.adapter.BrokerAdapter.setState(BrokerAdapter.java:749)
>>     [junit]     at
>> org.apache.qpid.server.model.adapter.AbstractAdapter.setDesiredState(AbstractAdapter.java:88)
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
>> For additional commands, e-mail: dev-help@qpid.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
> For additional commands, e-mail: dev-help@qpid.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Re: [Java] Deadlock running Java tests

Posted by Oleksandr Rudyy <or...@gmail.com>.
Hi Rob,

I have not seen this issue.
Also, I tried to reproduce the issue by running the BasicAuthRestTest
in a cycle but could not reproduce it during 1 hour of running. I
continue running the test.

Could you please clarify what is the version of JVM you are using?

Alex

On 18 March 2013 12:19, Rob Godfrey <ro...@gmail.com> wrote:
> Anyone seen this deadlock (running
> org.apache.qpid.systest.rest.BasicAuthRestTest) before?
>
> It's in a checkout where I've been making changes, but none that I
> think would affect this code:
>
>     [junit] Found one Java-level deadlock:
>     [junit] =============================
>     [junit] "qtp1606963758-5404":
>     [junit]   waiting to lock monitor 0x00007f6cf00517d8 (object
> 0x00000000f847cf10, a sun.security.ssl.SSLSocketImpl),
>     [junit]   which is held by "Broker-Configuration-Thread"
>     [junit] "Broker-Configuration-Thread":
>     [junit]   waiting for ownable synchronizer 0x00000000f847d0c0, (a
> java.util.concurrent.locks.ReentrantLock$NonfairSync),
>     [junit]   which is held by "qtp1606963758-5404"
>     [junit]
>     [junit] Java stack information for the threads listed above:
>     [junit] ===================================================
>     [junit] "qtp1606963758-5404":
>     [junit]     at
> sun.security.ssl.SSLSocketImpl.getConnectionState(SSLSocketImpl.java:649)
>     [junit]     - waiting to lock <0x00000000f847cf10> (a
> sun.security.ssl.SSLSocketImpl)
>     [junit]     at sun.security.ssl.SSLSocketImpl.isClosed(SSLSocketImpl.java:1462)
>     [junit]     at java.net.Socket.getTcpNoDelay(Socket.java:953)
>     [junit]     at
> sun.security.ssl.BaseSSLSocketImpl.getTcpNoDelay(BaseSSLSocketImpl.java:345)
>     [junit]     at
> sun.security.ssl.SSLSocketImpl.writeRecordInternal(SSLSocketImpl.java:819)
>     [junit]     at
> sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:801)
>     [junit]     at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:122)
>     [junit]     - locked <0x00000000f848aca0> (a sun.security.ssl.AppOutputStream)
>     [junit]     at
> org.eclipse.jetty.io.ByteArrayBuffer.writeTo(ByteArrayBuffer.java:354)
>     [junit]     at
> org.eclipse.jetty.io.bio.StreamEndPoint.flush(StreamEndPoint.java:159)
>     [junit]     at
> org.eclipse.jetty.io.bio.StreamEndPoint.flush(StreamEndPoint.java:189)
>     [junit]     at
> org.eclipse.jetty.http.HttpGenerator.flushBuffer(HttpGenerator.java:876)
>     [junit]     at
> org.eclipse.jetty.http.HttpGenerator.complete(HttpGenerator.java:836)
>     [junit]     at
> org.eclipse.jetty.server.AbstractHttpConnection.commitResponse(AbstractHttpConnection.java:576)
>     [junit]     at
> org.eclipse.jetty.server.AbstractHttpConnection$Output.close(AbstractHttpConnection.java:999)
>     [junit]     at org.eclipse.jetty.server.HttpWriter.close(HttpWriter.java:80)
>     [junit]     at
> org.eclipse.jetty.server.AbstractHttpConnection$1.close(AbstractHttpConnection.java:372)
>     [junit]     - locked <0x00000000f8838678> (a
> org.eclipse.jetty.server.AbstractHttpConnection$OutputWriter)
>     [junit]     at java.io.BufferedWriter.close(BufferedWriter.java:266)
>     [junit]     - locked <0x00000000f88386a8> (a
> org.eclipse.jetty.server.AbstractHttpConnection$1)
>     [junit]     at
> org.codehaus.jackson.impl.WriterBasedGenerator.close(WriterBasedGenerator.java:944)
>     [junit]     at
> org.codehaus.jackson.map.ObjectMapper._configAndWriteValue(ObjectMapper.java:2568)
>     [junit]     at
> org.codehaus.jackson.map.ObjectMapper.writeValue(ObjectMapper.java:2072)
>     [junit]     at
> org.apache.qpid.server.management.plugin.servlet.rest.RestServlet.doGetWithSubjectAndActor(RestServlet.java:310)
>  ...
>     [junit] "Broker-Configuration-Thread":
>     [junit]     at sun.misc.Unsafe.park(Native Method)
>     [junit]     - parking to wait for  <0x00000000f847d0c0> (a
> java.util.concurrent.locks.ReentrantLock$NonfairSync)
>     [junit]     at
> java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
>     [junit]     at
> java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
>     [junit]     at
> java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:867)
>     [junit]     at
> java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1197)
>     [junit]     at
> java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:214)
>     [junit]     at
> java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:290)
>     [junit]     at
> sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:799)
>     [junit]     at
> sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:672)
>     [junit]     at
> sun.security.ssl.SSLSocketImpl.sendAlert(SSLSocketImpl.java:2023)
>     [junit]     at sun.security.ssl.SSLSocketImpl.warning(SSLSocketImpl.java:1850)
>     [junit]     at
> sun.security.ssl.SSLSocketImpl.closeInternal(SSLSocketImpl.java:1618)
>     [junit]     - locked <0x00000000f847cf10> (a sun.security.ssl.SSLSocketImpl)
>     [junit]     at sun.security.ssl.SSLSocketImpl.close(SSLSocketImpl.java:1554)
>     [junit]     at
> org.eclipse.jetty.io.bio.SocketEndPoint.close(SocketEndPoint.java:156)
>     [junit]     at
> org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.close(SocketConnector.java:233)
>     [junit]     at
> org.eclipse.jetty.server.ssl.SslSocketConnector$SslConnectorEndPoint.close(SslSocketConnector.java:613)
>     [junit]     at
> org.eclipse.jetty.server.bio.SocketConnector.doStop(SocketConnector.java:167)
>     [junit]     at
> org.eclipse.jetty.server.ssl.SslSocketConnector.doStop(SslSocketConnector.java:371)
>     [junit]     at
> org.eclipse.jetty.util.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:84)
>     [junit]     - locked <0x00000000f83bebd8> (a java.lang.Object)
>     [junit]     at org.eclipse.jetty.server.Server.doStop(Server.java:318)
>     [junit]     at
> org.eclipse.jetty.util.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:84)
>     [junit]     - locked <0x00000000f83be2a8> (a java.lang.Object)
>     [junit]     at
> org.apache.qpid.server.management.plugin.HttpManagement.stop(HttpManagement.java:187)
>     [junit]     at
> org.apache.qpid.server.management.plugin.HttpManagement.setState(HttpManagement.java:156)
>     [junit]     at
> org.apache.qpid.server.model.adapter.AbstractAdapter.setDesiredState(AbstractAdapter.java:88)
>     [junit]     at
> org.apache.qpid.server.model.adapter.BrokerAdapter.changeState(BrokerAdapter.java:776)
>     [junit]     - locked <0x00000000f7c34408> (a java.util.HashMap)
>     [junit]     at
> org.apache.qpid.server.model.adapter.BrokerAdapter.setState(BrokerAdapter.java:749)
>     [junit]     at
> org.apache.qpid.server.model.adapter.AbstractAdapter.setDesiredState(AbstractAdapter.java:88)
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
> For additional commands, e-mail: dev-help@qpid.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org