From ee7bc9abf2d507112e1e08dc2b688bfb4a7b29bb Mon Sep 17 00:00:00 2001 From: Keith Wall Date: Wed, 21 Sep 2011 16:01:10 +0000 Subject: QPID-3498: Broker race condition mean that it tries to respond before IoSender thread is running git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1173738 13f79535-47bb-0310-9956-ffa450edef68 --- .../org/apache/qpid/transport/network/io/IoNetworkConnection.java | 2 +- .../src/main/java/org/apache/qpid/transport/network/io/IoSender.java | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'java/common') diff --git a/java/common/src/main/java/org/apache/qpid/transport/network/io/IoNetworkConnection.java b/java/common/src/main/java/org/apache/qpid/transport/network/io/IoNetworkConnection.java index 52cc6363a9..bfc77539ce 100644 --- a/java/common/src/main/java/org/apache/qpid/transport/network/io/IoNetworkConnection.java +++ b/java/common/src/main/java/org/apache/qpid/transport/network/io/IoNetworkConnection.java @@ -54,8 +54,8 @@ public class IoNetworkConnection implements NetworkConnection public void start() { - _ioReceiver.initiate(); _ioSender.initiate(); + _ioReceiver.initiate(); } public Sender getSender() diff --git a/java/common/src/main/java/org/apache/qpid/transport/network/io/IoSender.java b/java/common/src/main/java/org/apache/qpid/transport/network/io/IoSender.java index 473d4d95ff..427487c879 100644 --- a/java/common/src/main/java/org/apache/qpid/transport/network/io/IoSender.java +++ b/java/common/src/main/java/org/apache/qpid/transport/network/io/IoSender.java @@ -113,6 +113,10 @@ public final class IoSender implements Runnable, Sender { throw new SenderClosedException("sender is closed", exception); } + if(!senderThread.isAlive()) + { + throw new SenderException("sender thread not alive"); + } final int size = buffer.length; int remaining = buf.remaining(); -- cgit v1.2.1