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

Christopher L. Shannon commented on AMQ-9569:
---------------------------------------------

A change like this should have some tests written before merging to verify

> WriteTimeoutFilter does not timeout SSL write (handshake)
> ---------------------------------------------------------
>
>                 Key: AMQ-9569
>                 URL: https://issues.apache.org/jira/browse/AMQ-9569
>             Project: ActiveMQ Classic
>          Issue Type: Bug
>    Affects Versions: 5.18.5
>            Reporter: Martin Lichtin
>            Assignee: Jean-Baptiste Onofré
>            Priority: Major
>         Attachments: WriteTimeoutFilter.java
>
>
> WriteTimeoutFilter does not timeout the SSL write (handshake), as can be seen 
> by this stack trace.
> {noformat}
> "ActiveMQ Task-5" #195869202 daemon prio=5 os_prio=0 tid=0x00007f8b68090000 
> nid=0xe591 runnable [0x00007f8a7f4eb000]
>    java.lang.Thread.State: RUNNABLE
>     at java.net.SocketInputStream.socketRead0(Native Method)
>     at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
>     at java.net.SocketInputStream.read(SocketInputStream.java:171)
>     at java.net.SocketInputStream.read(SocketInputStream.java:141)
>     at 
> sun.security.ssl.SSLSocketInputRecord.read(SSLSocketInputRecord.java:464)
>     at 
> sun.security.ssl.SSLSocketInputRecord.decode(SSLSocketInputRecord.java:165)
>     at sun.security.ssl.SSLTransport.decode(SSLTransport.java:109)
>     at sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1401)
>     at 
> sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1309)
>     at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:440)
>     at sun.security.ssl.SSLSocketImpl.ensureNegotiated(SSLSocketImpl.java:822)
>     at sun.security.ssl.SSLSocketImpl.access$200(SSLSocketImpl.java:73)
>     at 
> sun.security.ssl.SSLSocketImpl$AppOutputStream.write(SSLSocketImpl.java:1184)
>     at 
> org.apache.activemq.transport.tcp.TcpBufferedOutputStream.flush(TcpBufferedOutputStream.java:115)
>     at java.io.DataOutputStream.flush(DataOutputStream.java:123)
>     at 
> org.apache.activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:194)
>     at 
> org.apache.activemq.transport.AbstractInactivityMonitor.doOnewaySend(AbstractInactivityMonitor.java:335)
>     at 
> org.apache.activemq.transport.AbstractInactivityMonitor.oneway(AbstractInactivityMonitor.java:317)
>     at 
> org.apache.activemq.transport.WireFormatNegotiator.sendWireFormat(WireFormatNegotiator.java:181)
>     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:64)
>     at 
> org.apache.activemq.transport.WriteTimeoutFilter.start(WriteTimeoutFilter.java:132)
>     at 
> org.apache.activemq.transport.failover.FailoverTransport.doReconnect(FailoverTransport.java:1026)
>     - locked <0x00000006caf036c0> (a java.lang.Object)
>     at 
> org.apache.activemq.transport.failover.FailoverTransport$2.iterate(FailoverTransport.java:151)
>     - locked <0x00000006cb402778> (a java.lang.Object)
>     at 
> org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:133)
>     at 
> org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:48)
>     at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>     at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>     at java.lang.Thread.run(Thread.java:750)  {noformat}
> WriteTimeoutFilter.start() method should also register and track the timeout, 
> like already done in the oneway() method.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact


Reply via email to