You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Timothy Bish (Commented) (JIRA)" <ji...@apache.org> on 2012/03/07 16:28:57 UTC

[jira] [Commented] (AMQ-3759) ActiveMQConnectionFactory blocks in case of ssl

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

Timothy Bish commented on AMQ-3759:
-----------------------------------

You haven't configured the BrokerService with KeyStore or TrustStore etc, so it cannot accept incoming SSL connections. 
                
> ActiveMQConnectionFactory blocks in case of ssl
> -----------------------------------------------
>
>                 Key: AMQ-3759
>                 URL: https://issues.apache.org/jira/browse/AMQ-3759
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: JMS client
>    Affects Versions: 5.4.3, 5.5.1
>            Reporter: Krzysztof Olszewski
>         Attachments: ConnectionFactoryTest.java
>
>
> When ActiveMQConnectionFactory is used to create connection to broker using SSL the thread becomes blocked (waiting infinite on SocketInputStream#socketRead0).
> Stacktrace:
> "ActiveMQ Transport: ssl://localhost/127.0.0.1:9099" prio=6 tid=0x0000000006105000 nid=0x463c waiting for monitor entry [0x0000000008a2f000]
>    java.lang.Thread.State: BLOCKED (on object monitor)
> 	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)
> 	- waiting to lock <0x000000078219d8f8> (a java.lang.Object)
> 	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(Unknown Source)
> 	at com.sun.net.ssl.internal.ssl.AppInputStream.read(Unknown Source)
> 	- locked <0x000000078219d9d0> (a com.sun.net.ssl.internal.ssl.AppInputStream)
> 	at org.apache.activemq.transport.tcp.TcpBufferedInputStream.fill(TcpBufferedInputStream.java:50)
> 	at org.apache.activemq.transport.tcp.TcpTransport$2.fill(TcpTransport.java:576)
> 	at org.apache.activemq.transport.tcp.TcpBufferedInputStream.read(TcpBufferedInputStream.java:58)
> 	at org.apache.activemq.transport.tcp.TcpTransport$2.read(TcpTransport.java:561)
> 	at java.io.DataInputStream.readInt(Unknown Source)
> 	at org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:269)
> 	at org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:227)
> 	at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:219)
> 	at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:202)
> 	at java.lang.Thread.run(Unknown Source)
> "Thread-4" prio=6 tid=0x0000000006103800 nid=0x2bb8 runnable [0x000000000872e000]
>    java.lang.Thread.State: RUNNABLE
> 	at java.net.SocketInputStream.socketRead0(Native Method)
> 	at java.net.SocketInputStream.read(Unknown Source)
> 	at com.sun.net.ssl.internal.ssl.InputRecord.readFully(Unknown Source)
> 	at com.sun.net.ssl.internal.ssl.InputRecord.read(Unknown Source)
> 	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(Unknown Source)
> 	- locked <0x00000007821b14c8> (a java.lang.Object)
> 	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)
> 	- locked <0x000000078219d8f8> (a java.lang.Object)
> 	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.writeRecord(Unknown Source)
> 	at com.sun.net.ssl.internal.ssl.AppOutputStream.write(Unknown Source)
> 	- locked <0x00000007821a2a60> (a com.sun.net.ssl.internal.ssl.AppOutputStream)
> 	at org.apache.activemq.transport.tcp.TcpBufferedOutputStream.flush(TcpBufferedOutputStream.java:115)
> 	at java.io.DataOutputStream.flush(Unknown Source)
> 	at org.apache.activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:182)
> 	at org.apache.activemq.transport.InactivityMonitor.oneway(InactivityMonitor.java:254)
> 	- locked <0x00000007821a2898> (a java.util.concurrent.atomic.AtomicBoolean)
> 	at org.apache.activemq.transport.WireFormatNegotiator.sendWireFormat(WireFormatNegotiator.java:168)
> 	at org.apache.activemq.transport.WireFormatNegotiator.sendWireFormat(WireFormatNegotiator.java:84)
> 	at org.apache.activemq.transport.WireFormatNegotiator.start(WireFormatNegotiator.java:74)
> 	at org.apache.activemq.transport.TransportFilter.start(TransportFilter.java:58)
> 	at org.apache.activemq.transport.TransportFilter.start(TransportFilter.java:58)
> 	at org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:266)
> 	at org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:230)
> 	at org.apache.activemq.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:178)
> 	at org.apache.activemq.broker.test.SslDeadlockTest.sendMsg(SslDeadlockTest.java:53)
> 	at org.apache.activemq.broker.test.SslDeadlockTest.testFail(SslDeadlockTest.java:41)
> 	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.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
> 	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
> 	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
> 	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
> 	at org.junit.internal.runners.statements.FailOnTimeout$1.run(FailOnTimeout.java:28)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira