activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Logan Johnson" <logan.john...@gmail.com>
Subject Retroactive consumer and network of brokers
Date Fri, 23 Jun 2006 15:18:11 GMT
I have a network of brokers, with a producer on Broker P and a
consumer on Broker C.

The producer sends persistent messages to a topic.  The consumer is a
jencks connector, with an ActiveMQActivationSpec whose destination has
the consumer.retroactive option set to 'true':

    <bean id="inboundConnectorForConfig" class="org.jencks.JCAConnector">
        <property name="jcaContainer" ref="jencks"/>
        <property name="activationSpec">
            <bean class="org.apache.activemq.ra.ActiveMQActivationSpec">
                <property name="destination"
                        value="myproduct.jms.config.>?consumer.exclusive=true"/>
                <property name="destinationType" value="javax.jms.Topic"/>
                <property name="maxSessions" value="1"/>
            </bean>
        </property>
        <property name="ref" value="jmsConfigListener"/>
    </bean>


When the brokers connect, I can see a DemandForwardingBridge
established, but in the ConsumerInfo the retroactive flag is set to
false:


org.apache.activemq.network.DemandForwardingBridge - Forwarding sub on vm://ad
minui#6 from localhost : ConsumerInfo {commandId = 3, responseRequired
= true, consumerId = ID:mini.local-63622-1150916821898-3:5:-1:2,
destination = topic://myproduct.jms.config.>, prefetchSize = 10,
maximumPendingMessageLimit = 0, browser = false, dispatchAsync =
false, selector = null, subcriptionName = null, noLocal =
 false, exclusive = false, retroactive = false, priority = 0,
brokerPath = [ID:mini.local-63622-1150916821898-1:1],
optimizedAcknowledge = false, noRangeAcks = fal
se, additionalPredicate = null}


Messages sent to Broker P while Broker C is down are therefore never
forwarded to Broker C upon reconnect.

I see three possibilities here:  (A) I'm doing entirely the wrong
thing to achieve my goal of reliable delivery of messages sent to
Broker P while Broker C is down; (B) I misunderstand the relationship
between that activation spec and the network connection; (C) my
destination options should be reflected in the network connection, but
either Jencks or ActiveMQ is failing to propagate my options.

Can anyone tell me at least in which one of these general areas the
problem lies?

Mime
View raw message