Did you clear out the ${activemq.base}/data directory before running the
test?

Joe
Get a free ActiveMQ user guide @ http://www.ttmsolutions.com 



Manu86 wrote:
> 
> Hello, 
> 
> I have a simple Master/Slave configuration between two brokers. I use
> default configuration of ActiveMQ 5.1.
> I start the master and then the slave, both with empty queues. 
> 
> I repeat the following steps :
> - A producer sends 10 messages on a queue (Then the
> producer/session/connection is closed)
> - A consumer receives the messages (Then the consumer/session/connection
> is closed)
> 
> After several iterations, the following error is raised while receiving :
> 
> On the master :
> 
> ERROR MasterBroker                   - Slave Failed
> javax.jms.JMSException: Slave broker out of sync with master:
> Acknowledgment (MessageAck {commandId = 131, responseRequired = true,
> ackType = 2, consumerId = ID:cocker-2847-122233360910
> 9-0:0:1:1, firstMessageId = null, lastMessageId =
> ID:cocker-2824-1222333604765-0:0:1:1:1, destination = queue://queueTest01,
> transactionId = null, messageCount = 1}) was not in the disp
> atch list: []
>         at
> org.apache.activemq.broker.region.PrefetchSubscription.acknowledge(PrefetchSubscription.java:365)
>         at
> org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:364)
>         at
> org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:470)
>         at
> org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:194)
>         at
> org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at
> org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at
> org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:84)
>         at
> org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:443)
>         at
> org.apache.activemq.command.MessageAck.visit(MessageAck.java:196)
>         at
> org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:292)
>         at
> org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)
>         at
> org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:104)
>         at
> org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
>         at
> org.apache.activemq.transport.vm.VMTransport.iterate(VMTransport.java:205)
>         at
> org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98)
>         at
> org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36)
> 
> 
> On the slave :
> 
> ERROR Service                        - Async error occurred:
> javax.jms.JMSException: Slave broker out of sync with master: Dispatched
> message (ID:cocker-2824-1222333604765-0:0:1:1:1) wa
> s not in the pending list
> javax.jms.JMSException: Slave broker out of sync with master: Dispatched
> message (ID:cocker-2824-1222333604765-0:0:1:1:1) was not in the pending
> list
>         at
> org.apache.activemq.broker.region.PrefetchSubscription.processMessageDispatchNotification(PrefetchSubscription.java:166)
>         at
> org.apache.activemq.broker.region.AbstractRegion.processDispatchNotification(AbstractRegion.java:405)
>         at
> org.apache.activemq.broker.region.RegionBroker.processDispatchNotification(RegionBroker.java:593)
>         at
> org.apache.activemq.broker.BrokerFilter.processDispatchNotification(BrokerFilter.java:201)
>         at
> org.apache.activemq.broker.BrokerFilter.processDispatchNotification(BrokerFilter.java:201)
>         at
> org.apache.activemq.broker.BrokerFilter.processDispatchNotification(BrokerFilter.java:201)
>         at
> org.apache.activemq.broker.MutableBrokerFilter.processDispatchNotification(MutableBrokerFilter.java:208)
>         at
> org.apache.activemq.broker.TransportConnection.processMessageDispatchNotification(TransportConnection.java:453)
>         at
> org.apache.activemq.command.MessageDispatchNotification.visit(MessageDispatchNotification.java:77)
>         at
> org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:292)
>         at
> org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)
>         at
> org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:104)
> 
>         at
> org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
>         at
> org.apache.activemq.transport.vm.VMTransport.iterate(VMTransport.java:205)
>         at
> org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98)
>         at
> org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36)
> 
> 
> Messages are all consumed on the master broker but some are still in the
> queue of the slave broker.
> 
> Is there something to configure in order to keep the synchronization
> between master and slave ?
> 
> Thanks.
> 

-- 
View this message in context: 
http://www.nabble.com/Master-Slave-out-of-sync-tp19666038p19667776.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to