[ 
https://issues.apache.org/activemq/browse/AMQ-734?page=comments#action_37294 ] 
            
Eric Wood commented on AMQ-734:
-------------------------------

We can reproduce this issue using the current build of 4.0.2.  We are running a 
distributed queue between two embedded brokers over an unreliable network 
(wireless).  We had been using 4.0.1, but the brokers did not reestablish the 
bridge when it was stopped due to inactivity timeout.  We tried 4.0.2 and it 
worked great for a while, but eventually one of the reconnect attempts failed.  
On the receiver side broker (called CTSServer) we see in the logs wire format 
negotiation taking place, but on the send side broker (called CTSClient) we get 
the following in the log:
 
     [java] 12:42:12,236 DEBUG DurableConduitBridge:69 - Forwarding messages 
for durable destination: queue://TEST.FOO
     [java] 12:42:12,237 DEBUG DemandForwardingBridge:289 -  stopping CTSClient 
bridge to CTSServer is disposed already ? false
     [java] 12:42:12,240 DEBUG DemandForwardingBridge:308 - CTSClient bridge to 
CTSServer stopped
     [java] 12:42:12,241 DEBUG DemandForwardingBridge:289 -  stopping CTSClient 
bridge to CTSServer is disposed already ? true
     [java] 12:42:12,242 DEBUG DemandForwardingBridge:308 - CTSClient bridge to 
CTSServer stopped
     [java] 12:42:12,244  INFO NetworkConnector:96 - Establishing network 
connection between from vm://CTSClient?network=true to tcp://10.134.0.1:61616
     [java] 12:42:15,986 DEBUG WireFormatNegotiator:65 - Sending: 
WireFormatInfo { version=1, properties={TightEncodingEnabled=true, 
TcpNoDelayEnabled=true, SizePrefixDisabled=false, StackTraceEnabled=true, 
MaxInactivityDuration=30000, CacheEnabled=true}, magic=[A,c,t,i,v,e,M,Q]}
     [java] 12:42:15,987 DEBUG TcpTransport:133 - TCP consumer thread starting
     [java] 12:42:18,957 DEBUG WireFormatNegotiator:95 - Received WireFormat: 
WireFormatInfo { version=1, properties={StackTraceEnabled=true, 
TightEncodingEnabled=true, TcpNoDelayEnabled=true, SizePrefixDisabled=false, 
MaxInactivityDuration=30000, CacheEnabled=true}, magic=[A,c,t,i,v,e,M,Q]}
     [java] 12:42:18,957 DEBUG WireFormatNegotiator:102 - 
tcp:///10.134.0.1:61616 before negotiation: OpenWireFormat{version=1, 
cacheEnabled=false, stackTraceEnabled=false, tightEncodingEnabled=false, 
sizePrefixDisabled=false}
     [java] 12:42:18,958 DEBUG WireFormatNegotiator:113 - 
tcp:///10.134.0.1:61616 after negotiation: OpenWireFormat{version=1, 
cacheEnabled=true, stackTraceEnabled=true, tightEncodingEnabled=true, 
sizePrefixDisabled=false}
     [java] 12:42:21,838 DEBUG Service:221 - Async error occurred: 
javax.jms.InvalidClientIDException: Broker: CTSClient - Client: 
NC_CTSServer_inboundCTSClient already connected
     [java] javax.jms.InvalidClientIDException: Broker: CTSClient - Client: 
NC_CTSServer_inboundCTSClient already connected
     [java]     at 
org.apache.activemq.broker.region.RegionBroker.addConnection(RegionBroker.java:180)
     [java]     at 
org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:70)
     [java]     at 
org.apache.activemq.advisory.AdvisoryBroker.addConnection(AdvisoryBroker.java:70)
     [java]     at 
org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:70)
     [java]     at 
org.apache.activemq.broker.MutableBrokerFilter.addConnection(MutableBrokerFilter.java:83)
     [java]     at 
org.apache.activemq.broker.AbstractConnection.processAddConnection(AbstractConnection.java:633)
     [java]     at 
org.apache.activemq.command.ConnectionInfo.visit(ConnectionInfo.java:120)
     [java]     at 
org.apache.activemq.broker.AbstractConnection.service(AbstractConnection.java:237)
     [java]     at 
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:61)
     [java]     at 
org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:92)
     [java]     at 
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:67)
     [java]     at 
org.apache.activemq.transport.vm.VMTransport.oneway(VMTransport.java:77)
     [java]     at 
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:45)
     [java]     at 
org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:59)
     [java]     at 
org.apache.activemq.network.DemandForwardingBridgeSupport.startLocalBridge(DemandForwardingBridgeSupport.java:225)
     [java]     at 
org.apache.activemq.network.DemandForwardingBridgeSupport$3.run(DemandForwardingBridgeSupport.java:191)
     [java] 12:42:21,840  INFO DemandForwardingBridge:230 - Network connection 
between vm://CTSClient#728 and tcp:///10.134.0.1:61616(CTSServer) has been 
established.
     [java] 12:42:21,851  INFO DemandForwardingBridge:432 - Network connection 
between vm://CTSClient#728 and tcp:///10.134.0.1:61616 shutdown due to a local 
error: javax.jms.InvalidClientIDException: Broker: CTSClient - Client: 
NC_CTSServer_inboundCTSClient already connected
     [java] 12:42:21,854 DEBUG DemandForwardingBridge:433 - The local Exception 
was:javax.jms.InvalidClientIDException: Broker: CTSClient - Client: 
NC_CTSServer_inboundCTSClient already connected
     [java] javax.jms.InvalidClientIDException: Broker: CTSClient - Client: 
NC_CTSServer_inboundCTSClient already connected
     [java]     at 
org.apache.activemq.broker.region.RegionBroker.addConnection(RegionBroker.java:180)
     [java]     at 
org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:70)
     [java]     at 
org.apache.activemq.advisory.AdvisoryBroker.addConnection(AdvisoryBroker.java:70)
     [java]     at 
org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:70)
     [java]     at 
org.apache.activemq.broker.MutableBrokerFilter.addConnection(MutableBrokerFilter.java:83)
     [java]     at 
org.apache.activemq.broker.AbstractConnection.processAddConnection(AbstractConnection.java:633)
     [java]     at 
org.apache.activemq.command.ConnectionInfo.visit(ConnectionInfo.java:120)
     [java]     at 
org.apache.activemq.broker.AbstractConnection.service(AbstractConnection.java:237)
     [java]     at 
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:61)
     [java]     at 
org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:92)
     [java]     at 
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:67)
     [java]     at 
org.apache.activemq.transport.vm.VMTransport.oneway(VMTransport.java:77)
     [java]     at 
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:45)
     [java]     at 
org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:59)
     [java]     at 
org.apache.activemq.network.DemandForwardingBridgeSupport.startLocalBridge(DemandForwardingBridgeSupport.java:225)
     [java]     at 
org.apache.activemq.network.DemandForwardingBridgeSupport$3.run(DemandForwardingBridgeSupport.java:191)

This sequence just repeats continuously until the broker is stopped.


> Network connections do not reconnect when using static: with failover=true
> --------------------------------------------------------------------------
>
>                 Key: AMQ-734
>                 URL: https://issues.apache.org/activemq/browse/AMQ-734
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Connector
>    Affects Versions: 4.0
>         Environment: winxp java1.5.6
>            Reporter: tao
>         Assigned To: Hiram Chirino
>            Priority: Critical
>             Fix For: 4.0.1, 4.1
>
>
> If I pull out RJ45 port from net card ,waiting a time ,then put  RJ45 port 
> net card .Network is resume.Other computer always throw errors and net 
> channel can't work.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to