From activemq-commits-return-3338-apmail-geronimo-activemq-commits-archive=geronimo.apache.org@geronimo.apache.org Thu Sep 14 07:19:21 2006 Return-Path: Delivered-To: apmail-geronimo-activemq-commits-archive@www.apache.org Received: (qmail 92170 invoked from network); 14 Sep 2006 07:19:21 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 14 Sep 2006 07:19:21 -0000 Received: (qmail 30933 invoked by uid 500); 14 Sep 2006 07:19:21 -0000 Delivered-To: apmail-geronimo-activemq-commits-archive@geronimo.apache.org Received: (qmail 30886 invoked by uid 500); 14 Sep 2006 07:19:21 -0000 Mailing-List: contact activemq-commits-help@geronimo.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: activemq-dev@geronimo.apache.org Delivered-To: mailing list activemq-commits@geronimo.apache.org Received: (qmail 30874 invoked by uid 99); 14 Sep 2006 07:19:21 -0000 Received: from idunn.apache.osuosl.org (HELO idunn.apache.osuosl.org) (140.211.166.84) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 14 Sep 2006 00:19:21 -0700 Authentication-Results: idunn.apache.osuosl.org smtp.mail=jlim@apache.org; spf=permerror X-ASF-Spam-Status: No, hits=-9.8 required=5.0 tests=ALL_TRUSTED,NO_REAL_NAME Received-SPF: error (idunn.apache.osuosl.org: domain apache.org from 140.211.166.113 cause and error) Received: from ([140.211.166.113:56920] helo=eris.apache.org) by idunn.apache.osuosl.org (ecelerity 2.1 r(10620)) with ESMTP id 0F/51-02910-87209054 for ; Thu, 14 Sep 2006 00:19:20 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id 8E98E1A981D; Thu, 14 Sep 2006 00:19:18 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r443273 - in /incubator/activemq/branches/activemq-4.0/activemq-core/src/main/java/org/apache/activemq: broker/AbstractConnection.java broker/TransportConnection.java transport/tcp/TcpTransport.java Date: Thu, 14 Sep 2006 07:19:18 -0000 To: activemq-commits@geronimo.apache.org From: jlim@apache.org X-Mailer: svnmailer-1.1.0 Message-Id: <20060914071918.8E98E1A981D@eris.apache.org> X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Author: jlim Date: Thu Sep 14 00:19:17 2006 New Revision: 443273 URL: http://svn.apache.org/viewvc?view=rev&rev=443273 Log: fixed for http://issues.apache.org/activemq/browse/AMQ-918 Modified: incubator/activemq/branches/activemq-4.0/activemq-core/src/main/java/org/apache/activemq/broker/AbstractConnection.java incubator/activemq/branches/activemq-4.0/activemq-core/src/main/java/org/apache/activemq/broker/TransportConnection.java incubator/activemq/branches/activemq-4.0/activemq-core/src/main/java/org/apache/activemq/transport/tcp/TcpTransport.java Modified: incubator/activemq/branches/activemq-4.0/activemq-core/src/main/java/org/apache/activemq/broker/AbstractConnection.java URL: http://svn.apache.org/viewvc/incubator/activemq/branches/activemq-4.0/activemq-core/src/main/java/org/apache/activemq/broker/AbstractConnection.java?view=diff&rev=443273&r1=443272&r2=443273 ============================================================================== --- incubator/activemq/branches/activemq-4.0/activemq-core/src/main/java/org/apache/activemq/broker/AbstractConnection.java (original) +++ incubator/activemq/branches/activemq-4.0/activemq-core/src/main/java/org/apache/activemq/broker/AbstractConnection.java Thu Sep 14 00:19:17 2006 @@ -95,6 +95,7 @@ private WireFormatInfo wireFormatInfo; protected boolean disposed=false; + protected IOException transportException; static class ConnectionState extends org.apache.activemq.state.ConnectionState { private final ConnectionContext context; @@ -175,6 +176,7 @@ public void serviceTransportException(IOException e) { if( !disposed ) { + transportException = e; if( transportLog.isDebugEnabled() ) transportLog.debug("Transport failed: "+e,e); ServiceSupport.dispose(this); Modified: incubator/activemq/branches/activemq-4.0/activemq-core/src/main/java/org/apache/activemq/broker/TransportConnection.java URL: http://svn.apache.org/viewvc/incubator/activemq/branches/activemq-4.0/activemq-core/src/main/java/org/apache/activemq/broker/TransportConnection.java?view=diff&rev=443273&r1=443272&r2=443273 ============================================================================== --- incubator/activemq/branches/activemq-4.0/activemq-core/src/main/java/org/apache/activemq/broker/TransportConnection.java (original) +++ incubator/activemq/branches/activemq-4.0/activemq-core/src/main/java/org/apache/activemq/broker/TransportConnection.java Thu Sep 14 00:19:17 2006 @@ -22,13 +22,11 @@ import org.apache.activemq.broker.ft.MasterBroker; import org.apache.activemq.command.BrokerInfo; import org.apache.activemq.command.Command; -import org.apache.activemq.command.MessageDispatch; import org.apache.activemq.command.Response; import org.apache.activemq.command.ShutdownInfo; import org.apache.activemq.thread.TaskRunnerFactory; import org.apache.activemq.transport.DefaultTransportListener; import org.apache.activemq.transport.Transport; -import org.apache.activemq.transport.TransportListener; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -85,7 +83,12 @@ if (masterBroker != null){ masterBroker.stop(); } - transport.oneway(new ShutdownInfo()); + + // If the transport has not failed yet, + // notify the peer that we are doing a normal shutdown. + if( transportException == null ) { + transport.oneway(new ShutdownInfo()); + } } catch (Exception ignore) { //ignore.printStackTrace(); } Modified: incubator/activemq/branches/activemq-4.0/activemq-core/src/main/java/org/apache/activemq/transport/tcp/TcpTransport.java URL: http://svn.apache.org/viewvc/incubator/activemq/branches/activemq-4.0/activemq-core/src/main/java/org/apache/activemq/transport/tcp/TcpTransport.java?view=diff&rev=443273&r1=443272&r2=443273 ============================================================================== --- incubator/activemq/branches/activemq-4.0/activemq-core/src/main/java/org/apache/activemq/transport/tcp/TcpTransport.java (original) +++ incubator/activemq/branches/activemq-4.0/activemq-core/src/main/java/org/apache/activemq/transport/tcp/TcpTransport.java Thu Sep 14 00:19:17 2006 @@ -281,7 +281,9 @@ } protected void doStop(ServiceStopper stopper) throws Exception { - closeStreams(); + // Closing the streams flush the sockets before closing.. if the socket + // is hung.. then this hangs the close. + // closeStreams(); if (socket != null) { socket.close(); }