From ad8879d2839bdd16e0e8202f08881dc9f2980b75 Mon Sep 17 00:00:00 2001 From: Dejan Bosanac Date: Mon, 13 Jul 2015 13:34:08 +0200 Subject: [PATCH] https://issues.apache.org/jira/browse/AMQ-5368 - improve nio ssl handshake performance - use soTimeout for handshake selector --- .../org/apache/activemq/transport/nio/NIOSSLTransport.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/activemq-client/src/main/java/org/apache/activemq/transport/nio/NIOSSLTransport.java b/activemq-client/src/main/java/org/apache/activemq/transport/nio/NIOSSLTransport.java index 5b8f869d74..6b8a446073 100644 --- a/activemq-client/src/main/java/org/apache/activemq/transport/nio/NIOSSLTransport.java +++ b/activemq-client/src/main/java/org/apache/activemq/transport/nio/NIOSSLTransport.java @@ -348,7 +348,6 @@ public class NIOSSLTransport extends NIOTransport { Selector selector = null; SelectionKey key = null; boolean readable = true; - int timeout = 100; try { while (true) { HandshakeStatus handshakeStatus = sslEngine.getHandshakeStatus(); @@ -365,8 +364,8 @@ public class NIOSSLTransport extends NIOTransport { } else { key.interestOps(SelectionKey.OP_READ); } - int keyCount = selector.select(timeout); - if (keyCount == 0 && ((System.currentTimeMillis() - now) >= timeout)) { + int keyCount = selector.select(this.getSoTimeout()); + if (keyCount == 0 && this.getSoTimeout() > 0 && ((System.currentTimeMillis() - now) >= this.getSoTimeout())) { throw new SocketTimeoutException("Timeout during handshake"); } readable = key.isReadable();