persistent messages expire without being saved to ActiveMQ.DLQ if a
master-to-slave failover took place - issue with JDBC master-Slave cluster
----------------------------------------------------------------------------------------------------------------------------------------------
Key: AMQ-3226
URL: https://issues.apache.org/jira/browse/AMQ-3226
Project: ActiveMQ
Issue Type: Bug
Components: Broker
Affects Versions: 5.4.2
Environment: Sun Solaris + JDK 1.6
a JDBC cluster of 2 nodes running apache-activemq-5.4.2-fuse-01-00
using MS SQL Server 2008 as a database for JDBC
Reporter: Oleg Kiorsak
Priority: Critical
Setup :
Sun Solaris + JDK 1.6
a JDBC cluster of 2 nodes running apache-activemq-5.4.2-fuse-01-00
using MS SQL Server 2008 as a database for JDBC
1. 1 client (NMS STOMP , if that is any relevant) sends 10 persistent messages
with TTL set to 5 mins
2. after all messages have been sent and seen in the destination queue (via SQL
query)
but well before the time message are about to even start expirying
do a 'kill -KILL' of the activemq process on node1 ("master") - so 'failover'
take place
- node2 ("slave") now becomes new "master" and resumes connections/etc
3. in 5 mins time all 10 messages sitting in the destination queue do expire,
but they do NOT end up in ActiveMQ.DLQ as they should...
this is really bad -
basically the failover event breaks the promise of "guaranteed" delivery of
persistent messages
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira