Failing over in JDBC Master/Slave topology does not preserve transaction state
------------------------------------------------------------------------------
Key: AMQ-1710
URL: https://issues.apache.org/activemq/browse/AMQ-1710
Project: ActiveMQ
Issue Type: Bug
Components: Broker, Transport
Affects Versions: 4.1.2
Environment: Tested on 4.1.1 and 4.1.2
Reporter: Rob Bugh
Attachments: FailoverTest.java
Recreate steps:
1) Start two brokers in JDBC Master/Slave topology
2) Create an app that puts two or more messages in a queue (two messages are
sufficient). Give each message a JMXGroupID to force them to go to the same
consumer.
3) Create another app that creates two connection to the broker and on each
connection creates a session and a consumer with a unique clientID. Each should
attempt to consume messages from the queue defined above.
4) Run the app and when the first message is consumed stop the master. Failover
will occur and the slave becomes the new master.
5) Notice that when the transport resumes in the client that received the first
message an exception like the following is thrown:
javax.jms.JMSException: Transaction
'TX:ID:HOSTNAME-3289-1210016021661-0:1:1' has not been started.
6) Notice that the second consumer now recieves both messages.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.