From 0526a2fb4544b1d491f2d81c19f0bf47066bab1f Mon Sep 17 00:00:00 2001 From: fhanik Date: Thu, 18 Mar 2010 13:54:27 +0000 Subject: [PATCH] https://issues.apache.org/bugzilla/show_bug.cgi?id=48934 The wrong sender was disconnected, should only be the sender holding the actual TCP connections. git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@924776 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/catalina/tribes/transport/ReplicationTransmitter.java | 7 +------ .../apache/catalina/tribes/transport/nio/PooledParallelSender.java | 5 ++++- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/java/org/apache/catalina/tribes/transport/ReplicationTransmitter.java b/java/org/apache/catalina/tribes/transport/ReplicationTransmitter.java index d7cf91062..471d8dc23 100644 --- a/java/org/apache/catalina/tribes/transport/ReplicationTransmitter.java +++ b/java/org/apache/catalina/tribes/transport/ReplicationTransmitter.java @@ -76,12 +76,7 @@ public class ReplicationTransmitter implements ChannelSender { */ public void sendMessage(ChannelMessage message, Member[] destination) throws ChannelException { MultiPointSender sender = getTransport(); - try { - sender.sendMessage(destination,message); - }catch (ChannelException x) { - sender.disconnect(); - throw x; - } + sender.sendMessage(destination,message); } diff --git a/java/org/apache/catalina/tribes/transport/nio/PooledParallelSender.java b/java/org/apache/catalina/tribes/transport/nio/PooledParallelSender.java index d016ee896..43e2b1f19 100644 --- a/java/org/apache/catalina/tribes/transport/nio/PooledParallelSender.java +++ b/java/org/apache/catalina/tribes/transport/nio/PooledParallelSender.java @@ -52,9 +52,12 @@ public class PooledParallelSender extends PooledSender { try { sender.sendMessage(destination, message); sender.keepalive(); + } catch (ChannelException x) { + sender.disconnect(); + throw x; } finally { - if (!connected) disconnect(); returnSender(sender); + if (!connected) disconnect(); } } } -- 2.11.0