You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by rmahoney249 <ro...@cnet.com> on 2008/04/10 21:14:50 UTC

AMQ 5.0.0: DemandForwardingBridge not restarting after one node is bounced

I'm having a problem with a Network of Brokers in a store and forward setup. 
If I take down the activemq instance on the producer side and then restart,
it never recreates the DemandForwardingBridge. Here are the details:

Server A (linux, java 1.5):
 - STOMP Producers putting messages on queue FOO
 - here is a snippet of the activemq 5.0.0 config
...
    <!-- The store and forward broker networks ActiveMQ will listen to -->
    <networkConnectors>
        <networkConnector
            uri="static://(failover://(tcp://serverb:61610))"
            name="serverb.61610"
            dynamicOnly="true"
            conduitSubscriptions="true"
            decreaseNetworkConsumerPriority="false"
            networkTTL="1">
            <staticallyIncludedDestinations>
                <queue physicalName=">"/>
            </staticallyIncludedDestinations>
       </networkConnector>
    </networkConnectors>
...


Server B (linux, java1.5):
 - STOMP consumer reading messages off of queue FOO
 - Activemq 5.0.0 , here is the activemq.xml
 ...
  <broker xmlns="http://activemq.org/config/1.0"
      brokerName="${cnet.hostname}-${cnet.port.openwire}"
      dataDirectory="${activemq.base}/data">

    <!-- The transport connectors ActiveMQ will listen to -->
    <transportConnectors>
       <transportConnector name="openwire" uri="tcp://serverb:61610" />
       <transportConnector name="stomp"   uri="stomp://serverb:61611"/>
    </transportConnectors>

    <persistenceAdapter>
        <amqPersistenceAdapter directory="${activemq.base}/data"
maxFileLength="32mb"/>
    </persistenceAdapter>

    <destinationPolicy>
        <policyMap>
            <policyEntries>
                <policyEntry queue=">" producerFlowControl="false">
                    <dispatchPolicy>
                        <simpleDispatchPolicy/>
                    </dispatchPolicy>
                </policyEntry>
            </policyEntries>
        </policyMap>
    </destinationPolicy>
...

The first time I bring everything up (virgin install) everything connects
and messages start flowing from producers on server A to consumers on server
B. Here is servera's log:

2008-04-09 12:26:53,474 [erSimpleAppMain] INFO  DiscoveryNetworkConnector     
- Establishing network connection between from vm://61610.serverb to
failover://(tcp://servera:61610)
2008-04-09 12:26:53,525 [erSimpleAppMain] INFO  TransportConnector            
- Connector vm://61610.serverb Started
2008-04-09 12:26:53,572 [orker: 28232762] INFO  FailoverTransport             
- Successfully reconnected to tcp://servera:61610
2008-04-09 12:26:53,580 [erSimpleAppMain] INFO  NetworkConnector              
- Network Connector
org.apache.activemq.transport.discovery.simple.SimpleDiscoveryAgent@2d189c
Started
2008-04-09 12:26:53,580 [erSimpleAppMain] INFO  BrokerService                 
- ActiveMQ JMS Message Broker (61610.serverb,
ID:serverb-62691-1207769213286-0:0) started
2008-04-09 12:26:53,637 [Thread-6       ] INFO  DemandForwardingBridge        
- Network connection between vm://61610.serverb#0 and
tcp://servera:61610(servera-61610) has been established.


Now, if I restart activemq on server A the DemandForwardingBridge is never
restarted and messages are never forwarded to serverb. Here's the servera
log:

2008-04-09 12:28:17,428 [erSimpleAppMain] INFO  DiscoveryNetworkConnector     
- Establishing network connection between from vm://61610.serverb to
failover://(tcp://servera:61610)
2008-04-09 12:28:17,506 [erSimpleAppMain] INFO  TransportConnector            
- Connector vm://61610.serverb Started
2008-04-09 12:28:17,535 [orker: 17567590] INFO  FailoverTransport             
- Successfully reconnected to tcp://servera:61610
2008-04-09 12:28:17,575 [erSimpleAppMain] INFO  NetworkConnector              
- Network Connector
org.apache.activemq.transport.discovery.simple.SimpleDiscoveryAgent@2d189c
Started
2008-04-09 12:28:17,576 [erSimpleAppMain] INFO  BrokerService                 
- ActiveMQ JMS Message Broker (61610.serverb,
ID:serverb-62701-1207769297078-0:0) started

Anyone experience the same thing? Anyone have any thoughts?

Thanks,
Ron

-- 
View this message in context: http://www.nabble.com/AMQ-5.0.0%3A-DemandForwardingBridge-not-restarting-after-one-node-is-bounced-tp16614854s2354p16614854.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: AMQ 5.0.0: DemandForwardingBridge not restarting after one node is bounced

Posted by ttmdev <jo...@ttmsolutions.com>.
Doh! Never mind my previous question ;)

Joe


ttmdev wrote:
> 
> Try taking the 'failover' out of broker A's static connector. Like so,
> 
> <networkConnector uri="static:(tcp://serverb:61610)" name="serverb.61610"
> ... />
> 
> With the above static connector, if broker B fails, Broker A should go
> into connect retry mode. 
> 
> What version of AMQ are you using?
> 
> Joe
> Goto www.ttmsolutions.com for a free ActiveMQ user guide
> 
>  
> 
> 
> rmahoney249 wrote:
>> 
>> I'm having a problem with a Network of Brokers in a store and forward
>> setup.  If I take down the activemq instance on the producer side and
>> then restart, it never recreates the DemandForwardingBridge. Here are the
>> details:
>> 
>> Server A (linux, java 1.5):
>>  - STOMP Producers putting messages on queue FOO
>>  - here is a snippet of the activemq 5.0.0 config
>> ...
>>     <!-- The store and forward broker networks ActiveMQ will listen to
>> -->
>>     <networkConnectors>
>>         <networkConnector
>>             uri="static://(failover://(tcp://serverb:61610))"
>>             name="serverb.61610"
>>             dynamicOnly="true"
>>             conduitSubscriptions="true"
>>             decreaseNetworkConsumerPriority="false"
>>             networkTTL="1">
>>             <staticallyIncludedDestinations>
>>                 <queue physicalName=">"/>
>>             </staticallyIncludedDestinations>
>>        </networkConnector>
>>     </networkConnectors>
>> ...
>> 
>> 
>> Server B (linux, java1.5):
>>  - STOMP consumer reading messages off of queue FOO
>>  - Activemq 5.0.0 , here is the activemq.xml
>>  ...
>>   <broker xmlns="http://activemq.org/config/1.0"
>>       brokerName="${cnet.hostname}-${cnet.port.openwire}"
>>       dataDirectory="${activemq.base}/data">
>> 
>>     <!-- The transport connectors ActiveMQ will listen to -->
>>     <transportConnectors>
>>        <transportConnector name="openwire" uri="tcp://serverb:61610" />
>>        <transportConnector name="stomp"   uri="stomp://serverb:61611"/>
>>     </transportConnectors>
>> 
>>     <persistenceAdapter>
>>         <amqPersistenceAdapter directory="${activemq.base}/data"
>> maxFileLength="32mb"/>
>>     </persistenceAdapter>
>> 
>>     <destinationPolicy>
>>         <policyMap>
>>             <policyEntries>
>>                 <policyEntry queue=">" producerFlowControl="false">
>>                     <dispatchPolicy>
>>                         <simpleDispatchPolicy/>
>>                     </dispatchPolicy>
>>                 </policyEntry>
>>             </policyEntries>
>>         </policyMap>
>>     </destinationPolicy>
>> ...
>> 
>> The first time I bring everything up (virgin install) everything connects
>> and messages start flowing from producers on server A to consumers on
>> server B. Here is servera's log:
>> 
>> 2008-04-09 12:26:53,474 [erSimpleAppMain] INFO  DiscoveryNetworkConnector     
>> - Establishing network connection between from vm://61610.serverb to
>> failover://(tcp://servera:61610)
>> 2008-04-09 12:26:53,525 [erSimpleAppMain] INFO  TransportConnector            
>> - Connector vm://61610.serverb Started
>> 2008-04-09 12:26:53,572 [orker: 28232762] INFO  FailoverTransport             
>> - Successfully reconnected to tcp://servera:61610
>> 2008-04-09 12:26:53,580 [erSimpleAppMain] INFO  NetworkConnector              
>> - Network Connector
>> org.apache.activemq.transport.discovery.simple.SimpleDiscoveryAgent@2d189c
>> Started
>> 2008-04-09 12:26:53,580 [erSimpleAppMain] INFO  BrokerService                 
>> - ActiveMQ JMS Message Broker (61610.serverb,
>> ID:serverb-62691-1207769213286-0:0) started
>> 2008-04-09 12:26:53,637 [Thread-6       ] INFO  DemandForwardingBridge        
>> - Network connection between vm://61610.serverb#0 and
>> tcp://servera:61610(servera-61610) has been established.
>> 
>> 
>> Now, if I restart activemq on server A the DemandForwardingBridge is
>> never restarted and messages are never forwarded to serverb. Here's the
>> servera log:
>> 
>> 2008-04-09 12:28:17,428 [erSimpleAppMain] INFO  DiscoveryNetworkConnector     
>> - Establishing network connection between from vm://61610.serverb to
>> failover://(tcp://servera:61610)
>> 2008-04-09 12:28:17,506 [erSimpleAppMain] INFO  TransportConnector            
>> - Connector vm://61610.serverb Started
>> 2008-04-09 12:28:17,535 [orker: 17567590] INFO  FailoverTransport             
>> - Successfully reconnected to tcp://servera:61610
>> 2008-04-09 12:28:17,575 [erSimpleAppMain] INFO  NetworkConnector              
>> - Network Connector
>> org.apache.activemq.transport.discovery.simple.SimpleDiscoveryAgent@2d189c
>> Started
>> 2008-04-09 12:28:17,576 [erSimpleAppMain] INFO  BrokerService                 
>> - ActiveMQ JMS Message Broker (61610.serverb,
>> ID:serverb-62701-1207769297078-0:0) started
>> 
>> Anyone experience the same thing? Anyone have any thoughts?
>> 
>> Thanks,
>> Ron
>> 
>> 
> 
> 

-- 
View this message in context: http://www.nabble.com/AMQ-5.0.0%3A-DemandForwardingBridge-not-restarting-after-one-node-is-bounced-tp16614854s2354p16616746.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: AMQ 5.0.0: DemandForwardingBridge not restarting after one node is bounced

Posted by rmahoney249 <ro...@cnet.com>.
Thanks for the quick reply. Looks like that was the secret sauce :-)


ttmdev wrote:
> 
> Try taking the 'failover' out of broker A's static connector. Like so,
> 
> <networkConnector uri="static:(tcp://serverb:61610)" name="serverb.61610"
> ... />
> 
> With the above static connector, if broker B fails, Broker A should go
> into connect retry mode. 
> 
> 
-- 
View this message in context: http://www.nabble.com/AMQ-5.0.0%3A-DemandForwardingBridge-not-restarting-after-one-node-is-bounced-tp16614854s2354p16617628.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: AMQ 5.0.0: DemandForwardingBridge not restarting after one node is bounced

Posted by ttmdev <jo...@ttmsolutions.com>.
Try taking the 'failover' out of broker A's static connector. Like so,

<networkConnector uri="static:(tcp://serverb:61610)" name="serverb.61610"
... />

With the above static connector, if broker B fails, Broker A should go into
connect retry mode. 

What version of AMQ are you using?

Joe
Goto www.ttmsolutions.com for a free ActiveMQ user guide

 


rmahoney249 wrote:
> 
> I'm having a problem with a Network of Brokers in a store and forward
> setup.  If I take down the activemq instance on the producer side and then
> restart, it never recreates the DemandForwardingBridge. Here are the
> details:
> 
> Server A (linux, java 1.5):
>  - STOMP Producers putting messages on queue FOO
>  - here is a snippet of the activemq 5.0.0 config
> ...
>     <!-- The store and forward broker networks ActiveMQ will listen to -->
>     <networkConnectors>
>         <networkConnector
>             uri="static://(failover://(tcp://serverb:61610))"
>             name="serverb.61610"
>             dynamicOnly="true"
>             conduitSubscriptions="true"
>             decreaseNetworkConsumerPriority="false"
>             networkTTL="1">
>             <staticallyIncludedDestinations>
>                 <queue physicalName=">"/>
>             </staticallyIncludedDestinations>
>        </networkConnector>
>     </networkConnectors>
> ...
> 
> 
> Server B (linux, java1.5):
>  - STOMP consumer reading messages off of queue FOO
>  - Activemq 5.0.0 , here is the activemq.xml
>  ...
>   <broker xmlns="http://activemq.org/config/1.0"
>       brokerName="${cnet.hostname}-${cnet.port.openwire}"
>       dataDirectory="${activemq.base}/data">
> 
>     <!-- The transport connectors ActiveMQ will listen to -->
>     <transportConnectors>
>        <transportConnector name="openwire" uri="tcp://serverb:61610" />
>        <transportConnector name="stomp"   uri="stomp://serverb:61611"/>
>     </transportConnectors>
> 
>     <persistenceAdapter>
>         <amqPersistenceAdapter directory="${activemq.base}/data"
> maxFileLength="32mb"/>
>     </persistenceAdapter>
> 
>     <destinationPolicy>
>         <policyMap>
>             <policyEntries>
>                 <policyEntry queue=">" producerFlowControl="false">
>                     <dispatchPolicy>
>                         <simpleDispatchPolicy/>
>                     </dispatchPolicy>
>                 </policyEntry>
>             </policyEntries>
>         </policyMap>
>     </destinationPolicy>
> ...
> 
> The first time I bring everything up (virgin install) everything connects
> and messages start flowing from producers on server A to consumers on
> server B. Here is servera's log:
> 
> 2008-04-09 12:26:53,474 [erSimpleAppMain] INFO  DiscoveryNetworkConnector     
> - Establishing network connection between from vm://61610.serverb to
> failover://(tcp://servera:61610)
> 2008-04-09 12:26:53,525 [erSimpleAppMain] INFO  TransportConnector            
> - Connector vm://61610.serverb Started
> 2008-04-09 12:26:53,572 [orker: 28232762] INFO  FailoverTransport             
> - Successfully reconnected to tcp://servera:61610
> 2008-04-09 12:26:53,580 [erSimpleAppMain] INFO  NetworkConnector              
> - Network Connector
> org.apache.activemq.transport.discovery.simple.SimpleDiscoveryAgent@2d189c
> Started
> 2008-04-09 12:26:53,580 [erSimpleAppMain] INFO  BrokerService                 
> - ActiveMQ JMS Message Broker (61610.serverb,
> ID:serverb-62691-1207769213286-0:0) started
> 2008-04-09 12:26:53,637 [Thread-6       ] INFO  DemandForwardingBridge        
> - Network connection between vm://61610.serverb#0 and
> tcp://servera:61610(servera-61610) has been established.
> 
> 
> Now, if I restart activemq on server A the DemandForwardingBridge is never
> restarted and messages are never forwarded to serverb. Here's the servera
> log:
> 
> 2008-04-09 12:28:17,428 [erSimpleAppMain] INFO  DiscoveryNetworkConnector     
> - Establishing network connection between from vm://61610.serverb to
> failover://(tcp://servera:61610)
> 2008-04-09 12:28:17,506 [erSimpleAppMain] INFO  TransportConnector            
> - Connector vm://61610.serverb Started
> 2008-04-09 12:28:17,535 [orker: 17567590] INFO  FailoverTransport             
> - Successfully reconnected to tcp://servera:61610
> 2008-04-09 12:28:17,575 [erSimpleAppMain] INFO  NetworkConnector              
> - Network Connector
> org.apache.activemq.transport.discovery.simple.SimpleDiscoveryAgent@2d189c
> Started
> 2008-04-09 12:28:17,576 [erSimpleAppMain] INFO  BrokerService                 
> - ActiveMQ JMS Message Broker (61610.serverb,
> ID:serverb-62701-1207769297078-0:0) started
> 
> Anyone experience the same thing? Anyone have any thoughts?
> 
> Thanks,
> Ron
> 
> 

-- 
View this message in context: http://www.nabble.com/AMQ-5.0.0%3A-DemandForwardingBridge-not-restarting-after-one-node-is-bounced-tp16614854s2354p16616509.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: AMQ 5.0.0: DemandForwardingBridge not restarting after one node is bounced

Posted by Rob Davies <ra...@gmail.com>.
On 10 Apr 2008, at 20:14, rmahoney249 wrote:

>
> I'm having a problem with a Network of Brokers in a store and  
> forward setup.
> If I take down the activemq instance on the producer side and then  
> restart,
> it never recreates the DemandForwardingBridge. Here are the details:
>
> Server A (linux, java 1.5):
> - STOMP Producers putting messages on queue FOO
> - here is a snippet of the activemq 5.0.0 config
> ...
>    <!-- The store and forward broker networks ActiveMQ will listen  
> to -->
>    <networkConnectors>
>        <networkConnector
>            uri="static://(failover://(tcp://serverb:61610))"
>            name="serverb.61610"
>            dynamicOnly="true"
>            conduitSubscriptions="true"
>            decreaseNetworkConsumerPriority="false"
>            networkTTL="1">
>            <staticallyIncludedDestinations>
>                <queue physicalName=">"/>
>            </staticallyIncludedDestinations>
>       </networkConnector>
>    </networkConnectors>
> ...
>
>
> Server B (linux, java1.5):
> - STOMP consumer reading messages off of queue FOO
> - Activemq 5.0.0 , here is the activemq.xml
> ...
>  <broker xmlns="http://activemq.org/config/1.0"
>      brokerName="${cnet.hostname}-${cnet.port.openwire}"
>      dataDirectory="${activemq.base}/data">
>
>    <!-- The transport connectors ActiveMQ will listen to -->
>    <transportConnectors>
>       <transportConnector name="openwire" uri="tcp://serverb:61610" />
>       <transportConnector name="stomp"   uri="stomp://serverb:61611"/>
>    </transportConnectors>
>
>    <persistenceAdapter>
>        <amqPersistenceAdapter directory="${activemq.base}/data"
> maxFileLength="32mb"/>
>    </persistenceAdapter>
>
>    <destinationPolicy>
>        <policyMap>
>            <policyEntries>
>                <policyEntry queue=">" producerFlowControl="false">
>                    <dispatchPolicy>
>                        <simpleDispatchPolicy/>
>                    </dispatchPolicy>
>                </policyEntry>
>            </policyEntries>
>        </policyMap>
>    </destinationPolicy>
> ...
>
> The first time I bring everything up (virgin install) everything  
> connects
> and messages start flowing from producers on server A to consumers  
> on server
> B. Here is servera's log:
>
> 2008-04-09 12:26:53,474 [erSimpleAppMain] INFO   
> DiscoveryNetworkConnector
> - Establishing network connection between from vm://61610.serverb to
> failover://(tcp://servera:61610)
> 2008-04-09 12:26:53,525 [erSimpleAppMain] INFO  TransportConnector
> - Connector vm://61610.serverb Started
> 2008-04-09 12:26:53,572 [orker: 28232762] INFO  FailoverTransport
> - Successfully reconnected to tcp://servera:61610
> 2008-04-09 12:26:53,580 [erSimpleAppMain] INFO  NetworkConnector
> - Network Connector
> org 
> .apache 
> .activemq.transport.discovery.simple.SimpleDiscoveryAgent@2d189c
> Started
> 2008-04-09 12:26:53,580 [erSimpleAppMain] INFO  BrokerService
> - ActiveMQ JMS Message Broker (61610.serverb,
> ID:serverb-62691-1207769213286-0:0) started
> 2008-04-09 12:26:53,637 [Thread-6       ] INFO  DemandForwardingBridge
> - Network connection between vm://61610.serverb#0 and
> tcp://servera:61610(servera-61610) has been established.
>
>
> Now, if I restart activemq on server A the DemandForwardingBridge is  
> never
> restarted and messages are never forwarded to serverb. Here's the  
> servera
> log:
>
> 2008-04-09 12:28:17,428 [erSimpleAppMain] INFO   
> DiscoveryNetworkConnector
> - Establishing network connection between from vm://61610.serverb to
> failover://(tcp://servera:61610)
> 2008-04-09 12:28:17,506 [erSimpleAppMain] INFO  TransportConnector
> - Connector vm://61610.serverb Started
> 2008-04-09 12:28:17,535 [orker: 17567590] INFO  FailoverTransport
> - Successfully reconnected to tcp://servera:61610
> 2008-04-09 12:28:17,575 [erSimpleAppMain] INFO  NetworkConnector
> - Network Connector
> org 
> .apache 
> .activemq.transport.discovery.simple.SimpleDiscoveryAgent@2d189c
> Started
> 2008-04-09 12:28:17,576 [erSimpleAppMain] INFO  BrokerService
> - ActiveMQ JMS Message Broker (61610.serverb,
> ID:serverb-62701-1207769297078-0:0) started
>
> Anyone experience the same thing? Anyone have any thoughts?
>
> Thanks,
> Ron
>
> -- 
> View this message in context: http://www.nabble.com/AMQ-5.0.0%3A-DemandForwardingBridge-not-restarting-after-one-node-is-bounced-tp16614854s2354p16614854.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
Hi Ron,

there's a lot of fixes in networks in trunk - would it be possible for  
you to try out a 5.1-SNAPSHOT release ?




cheers,

Rob

http://open.iona.com/ -Enterprise Open Integration
http://rajdavies.blogspot.com/