Hello, I'm trying to get a pure master slave configuration working. Ideally I'd like to have the brokers be persistent, but I've cut my configuration back so that it is as simple as possible and pretty much matches the example master and slave configuration in the test code base. Still I get errors in the following scenario:
1. Start the master broker. 2. A producer puts a message on a dynamic queue, but there are not yet any consumers. 3. The queue and message on the master are visible via JMX. 4. Start the slave broker. 5. The logs indicate that the connection between the master and slave is established, but the queue and message are not visible on the slave via JMX. 6. The producer puts a second message on the same dynamic queue. 7. The queue on the master now shows a QueueSize of 2. The queue is visible on the slave, but the QueueSize is 0. Also, the slave logs the following error: 2008-01-29 12:18:49,452 [Thread-7 ] INFO MasterConnector - Slave connection between vm://cpl058#0 and tcp://cpd040.centerpostcorp.com/172.16.55.56:61616 has been established. 2008-01-29 12:25:02,939 [: vm://cpl058#1] ERROR Service - Async error occurred: java.lang.IllegalStateException: Cannot add a producer to a session that had not been registered: ID:cpd040-2812-1201630495225-0:0:1 java.lang.IllegalStateException: Cannot add a producer to a session that had not been registered: ID:cpd040-2812-1201630495225-0:0:1 at org.apache.activemq.broker.TransportConnection.processAddProducer(Transp ortConnection.java:478) at org.apache.activemq.command.ProducerInfo.visit(ProducerInfo.java:105) at org.apache.activemq.broker.TransportConnection.service(TransportConnecti on.java:281) at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConn ection.java:178) at org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorre lator.java:100) at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter. java:67) at org.apache.activemq.transport.vm.VMTransport.iterate(VMTransport.java:20 2) at org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunn er.java:98) at org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner .java:36) 2008-01-29 12:25:03,189 [: vm://cpl058#1] ERROR Service - Async error occurred: java.lang.NullPointerException java.lang.NullPointerException at org.apache.activemq.broker.region.Queue.send(Queue.java:318) at org.apache.activemq.broker.region.AbstractRegion.send(AbstractRegion.jav a:331) at org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:43 6) at org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java :224) at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:125) at org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDest inationBroker.java:95) at org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter. java:135) at org.apache.activemq.broker.TransportConnection.processMessage(TransportC onnection.java:434) at org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:6 23) at org.apache.activemq.broker.TransportConnection.service(TransportConnecti on.java:281) at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConn ection.java:178) at org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorre lator.java:100) at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter. java:67) at org.apache.activemq.transport.vm.VMTransport.iterate(VMTransport.java:20 2) at org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunn er.java:98) at org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner .java:36) 2008-01-29 12:25:03,193 [: vm://cpl058#1] ERROR Service - Async error occurred: java.lang.IllegalStateException: Cannot remove a producer from a session that had not been registered: ID:cpd040-2812-1201630495225-0:0:1 java.lang.IllegalStateException: Cannot remove a producer from a session that had not been registered: ID:cpd040-2812-1201630495225-0:0:1 at org.apache.activemq.broker.TransportConnection.processRemoveProducer(Tra nsportConnection.java:500) at org.apache.activemq.command.RemoveInfo.visit(RemoveInfo.java:66) at org.apache.activemq.broker.TransportConnection.service(TransportConnecti on.java:281) at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConn ection.java:178) at org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorre lator.java:100) at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter. java:67) at org.apache.activemq.transport.vm.VMTransport.iterate(VMTransport.java:20 2) at org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunn er.java:98) at org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner .java:36) The broker config files are attached. The brokers and the producer are running the 5.1 snapshot from 1/25. Is there something wrong with my config, or should I open an issue? I have tried to get pure master/slave working in 4.1.1, 5.0, and several 5.1 snapshots, and I always get some sort of error. Has anyone had success with this feature in any version of ActiveMQ? Thanks, Jim