OK time to face-palm myself. There were line endings in the
destinationFilter. I even ignored when the copy-paste into the email showed
them!

Going to shift this into SVN internally!


On 31 May 2013 11:26, James Green <james.mk.gr...@gmail.com> wrote:

> I'm setting up a new spoke broker. It works fine except for one durable
> topic subscription.
>
> I've copied the config across from an existing one that works. The spokes
> connect into the hub:
>
>        <networkConnectors>
>             <networkConnector uri="static://(ssl://hub:61617)"
>                 name="hub"
>                 duplex="true"
>                 conduitSubscriptions="false"
>
> destinationFilter="ActiveMQ.Advisory.Consumer.Queue.Server.Message.Events,ActiveMQ.Advisory.Consumer.Queue.account_events,ActiveMQ.Advisory.Consumer.Queue.accounts.ack,ActiveMQ.Advisory.Consumer.Topic.accounts,ActiveMQ.Advisory.Consumer.Topic.Account.Requests,ActiveMQ.Advisory.Consumer.Topic.Server.Requests"
>                 dynamicOnly="false">
>                 <staticallyIncludedDestinations>
>                 </staticallyIncludedDestinations>
>                 <dynamicallyIncludedDestinations>
>                         <queue physicalName="account_events"/>
>                         <queue physicalName="accounts.ack"/>
>                         <queue physicalName="Server.Message.Events"/>
>                         <topic physicalName="accounts"/>
>                         <topic physicalName="Account.Requests"/>
>                         <topic physicalName="Server.Requests"/>
>                 </dynamicallyIncludedDestinations>
>                 <excludedDestinations>
>                     <queue physicalName="software"/>
>                 </excludedDestinations>
>             </networkConnector>
>         </networkConnectors>
>
> The one for topic Server.Requests appears in the new spoke's console as a
> durable topic subscriber. But in the log all I see is:
>
> 2013-05-31 11:04:00,500 | DEBUG | Activating
> DurableTopicSubscription-morant-server_requests:morant-server_requests,
> id=ID:morant-48672-1369993406909-2:101:-1:1, active=false, destinations=1,
> total=0, pending=0, dispatched=0, inflight=0, prefetchExtension=0 |
> org.apache.activemq.broker.region.DurableTopicSubscription | ActiveMQ
> Transport: tcp:///127.0.0.1:55623@61612
> 2013-05-31 11:04:00,501 | DEBUG | Unregistering MBean
> org.apache.activemq:BrokerName=morant,Type=Subscription,persistentMode=Durable,subscriptionID=morant-server_requests,destinationType=Topic,destinationName=Server.Requests,clientId=morant-server_requests
> | org.apache.activemq.broker.jmx.ManagementContext | ActiveMQ Transport:
> tcp:///127.0.0.1:55623@61612
>
> Contrast this with a near identical client on the same new spoke:
>
> 2013-05-31 11:01:19,447 | DEBUG | Activating
> DurableTopicSubscription-morant-account_requests:morant-account_requests,
> id=ID:morant-48672-1369993406909-2:88:-1:1, active=false, destinations=1,
> total=0, pending=0, dispatched=0, inflight=0, prefetchExtension=0 |
> org.apache.activemq.broker.region.DurableTopicSubscription | ActiveMQ
> Transport: tcp:///127.0.0.1:55597@61612
> 2013-05-31 11:01:19,448 | DEBUG | Unregistering MBean
> org.apache.activemq:BrokerName=morant,Type=Subscription,persistentMode=Durable,subscriptionID=morant-account_requests,destinationType=Topic,destinationName=Account.Requests,clientId=morant-account_requests
> | org.apache.activemq.broker.jmx.ManagementContext | ActiveMQ Transport:
> tcp:///127.0.0.1:55597@61612
> 2013-05-31 11:01:19,453 | DEBUG | bridging (morant -> hub)
> ID:morant-48672-1369993406909-1:1:0:0:452, consumer:
> ID:morant-48672-1369993406909-3:2:1:1, destination
> topic://ActiveMQ.Advisory.Consumer.Topic.Account.Requests, brokerPath:
> [ID:morant-48672-1369993406909-0:1], message: ActiveMQMessage {commandId =
> 0, responseRequired = false, messageId =
> ID:morant-48672-1369993406909-1:1:0:0:452, originalDestination = null,
> originalTransactionId = null, producerId =
> ID:morant-48672-1369993406909-3:1:1:1, destination =
> topic://ActiveMQ.Advisory.Consumer.Topic.Account.Requests, transactionId =
> null, expiration = 0, timestamp = 0, arrival = 0, brokerInTime =
> 1369994479452, brokerOutTime = 1369994479453, correlationId = null, replyTo
> = null, persistent = false, type = Advisory, priority = 0, groupID = null,
> groupSequence = 0, targetConsumerId = null, compressed = false, userID =
> null, content = null, marshalledProperties = null, dataStructure =
> ConsumerInfo {commandId = 3, responseRequired = false, consumerId =
> ID:morant-48672-1369993406909-2:88:-1:1, destination =
> topic://Account.Requests, prefetchSize = 1, maximumPendingMessageLimit = 0,
> browser = false, dispatchAsync = true, selector = null, subscriptionName =
> morant-account_requests, noLocal = false, exclusive = false, retroactive =
> false, priority = 0, brokerPath = null, optimizedAcknowledge = false,
> noRangeAcks = false, additionalPredicate = null}, redeliveryCounter = 0,
> size = 1024, properties = {consumerCount=1, originBrokerURL=stomp://
> 0.0.0.0:61612, originBrokerId=ID:morant-48672-1369993406909-0:1,
> originBrokerName=morant}, readOnlyProperties = false, readOnlyBody = false,
> droppable = false} |
> org.apache.activemq.network.DemandForwardingBridgeSupport | ActiveMQ
> BrokerService[morant] Task-11
>
> Evidently the bridging is happening for one but not the other. I can't see
> why. All the spokes are supposed to be identical bar hostname.
>
> This is with ActiveMQ 5.7.0 throughout the network.
>
> Advice appreciated.
>
> James
>
>

Reply via email to