From cb7bcf23fe349964a8251c1265e826d6b6c1af93 Mon Sep 17 00:00:00 2001 From: MS Date: Wed, 15 Apr 2015 08:08:10 -0700 Subject: [PATCH] CLOUDSTACK-8387 - Don't autoclose new mgmt server peer connections as soon as they open --- .../com/cloud/agent/manager/ClusteredAgentManagerImpl.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/engine/orchestration/src/com/cloud/agent/manager/ClusteredAgentManagerImpl.java b/engine/orchestration/src/com/cloud/agent/manager/ClusteredAgentManagerImpl.java index e38489bec63..2417f4de8f2 100755 --- a/engine/orchestration/src/com/cloud/agent/manager/ClusteredAgentManagerImpl.java +++ b/engine/orchestration/src/com/cloud/agent/manager/ClusteredAgentManagerImpl.java @@ -498,7 +498,8 @@ public class ClusteredAgentManagerImpl extends AgentManagerImpl implements Clust } catch (UnknownHostException e) { throw new CloudRuntimeException("Unable to resolve " + ip); } - try (SocketChannel ch1 = SocketChannel.open(new InetSocketAddress(addr, Port.value()));){ + try { + SocketChannel ch1 = SocketChannel.open(new InetSocketAddress(addr, Port.value())); ch1.configureBlocking(true); // make sure we are working at blocking mode ch1.socket().setKeepAlive(true); ch1.socket().setSoTimeout(60 * 1000); @@ -516,8 +517,9 @@ public class ClusteredAgentManagerImpl extends AgentManagerImpl implements Clust if (s_logger.isDebugEnabled()) { s_logger.debug("Connection to peer opened: " + peerName + ", ip: " + ip); } - _peers.put(peerName, ch); + _peers.put(peerName, ch1); _sslEngines.put(peerName, sslEngine); + return ch1; } catch (IOException e) { s_logger.warn("Unable to connect to peer management server: " + peerName + ", ip: " + ip + " due to " + e.getMessage(), e); return null;