Problem with subscription passing with network of brokers in AMQ 4.0.2
----------------------------------------------------------------------

                 Key: AMQ-961
                 URL: https://issues.apache.org/activemq/browse/AMQ-961
             Project: ActiveMQ
          Issue Type: Bug
          Components: Broker
    Affects Versions: 4.0.2
            Reporter: Kevin Yaussy
            Priority: Critical


There's an occasional problem with subscription propagation when using a 
network of brokers.  Test scenario uses ConsumerTool and PublisherTool in 
examples area of distribution.

1) Start broker A (has a network connection to broker B)
2) Start broker B (has a network connection to broker A)
3) start consumer C against broker A, on FOO
4) start publisher P against broker B, on FOO

Messages do not flow to consumer C.  In the broker B log, there's no indication 
it got any subscriptions from broker A.  Again, this is occasional.

I've taken a kill-3 on the brokers, both when this condition appears, and when 
everything is fine.  There's an obvious difference in one of the threads that 
hopefully will bring light to the problem.  I've not gone into the code yet to 
try and find the issue, but figured I would open this issue first.

Stack trace of broker A when subscriptions did NOT pass, and message flow is 
broken:
"ActiveMQ Transport: tcp://perfgc1a/170.137.15.169:5112" prio=10 tid=0x0030e160 
nid=0x3f in Object.wait() [0x8
e2ff000..0x8e2ff8f0]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x9b2b00d0> (a 
edu.emory.mathcs.backport.java.util.concurrent.CountDownLatch)
        at java.lang.Object.wait(Object.java:474)
        at 
edu.emory.mathcs.backport.java.util.concurrent.CountDownLatch.await(CountDownLatch.java:179)
        - locked <0x9b2b00d0> (a 
edu.emory.mathcs.backport.java.util.concurrent.CountDownLatch)
        at 
org.apache.activemq.network.DemandForwardingBridgeSupport.waitStarted(DemandForwardingBridgeSupport
.java:830)
        at 
org.apache.activemq.network.DemandForwardingBridgeSupport.serviceRemoteCommand(DemandForwardingBrid
geSupport.java:329)
        at 
org.apache.activemq.network.DemandForwardingBridgeSupport$2.onCommand(DemandForwardingBridgeSupport
.java:130)
        at 
org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:92)
        at 
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:67)
        at 
org.apache.activemq.transport.failover.FailoverTransport$1.onCommand(FailoverTransport.java:117)
        at 
org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:124)
        at 
org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:123)
        at 
org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:88)
        at 
org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:137)
        at java.lang.Thread.run(Thread.java:595)


Stack trace of broker A when everything works correctly:

"ActiveMQ Transport: tcp://perfgc1a/170.137.15.169:5112" prio=10 tid=0x01955fc8 
nid=0x3f runnable [0x8e2cf000..0x8e2cfaf0]
        at java.net.SocketInputStream.socketRead0(Native Method)
        at java.net.SocketInputStream.read(SocketInputStream.java:129)
        at 
org.apache.activemq.transport.tcp.TcpBufferedInputStream.fill(TcpBufferedInputStream.java:49)
        at 
org.apache.activemq.transport.tcp.TcpBufferedInputStream.read(TcpBufferedInputStream.java:56)
        at java.io.DataInputStream.readInt(DataInputStream.java:353)
        at 
org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:275)
        at 
org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:136)
        at java.lang.Thread.run(Thread.java:595)



-- 
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