Red Hat Bugzilla – Bug 509803
Recovered cluster-durable messages are never dequeued from store
Last modified: 2009-07-14 13:32:24 EDT
Description of problem:
If the cluster membership drops to one and a queue with the cluster-durable option specified has its messages persisted, if that node is then stopped and restarted, and messages are consumed, they are never dequeued from the store.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. create two node cluster
2. create queue with cluster-durable option selected
e.g. qpid-config add queue test-queue --durable --cluster-durable
3. add some transient messages to that queue
e.g. for i in `seq 1 10`; do echo "Message$i"; done | sender --send-eos 1
4. kill one node of cluster
5. stop and recover the other node
6. consume some messages from the queue
e.g. receiver --messages 5
7. stop and recover the node again
8. check that consumed messages are no longer on the queue
e.g. receiver --browse
Consumed messages are still on the queue.
Consumed messages are not still on the queue.
Created attachment 350667 [details]
patch for issue
Note that this patch should correct the issue, but needs testing, I don't
currently have access to an env to reproduce and validate the fix
Attached patch (with id=350667) fixes issue.
patch committed to trunk
Committed revision 791886.
Fixed in qpidd-0.5.752581-25.el5
on -22 bug appears
on -25 has been fixed
validated on RHEL 5.3 i386 / x86_64
# rpm -qa | grep -E '(qpid|openais|rhm)' | sort -u
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.