summaryrefslogtreecommitdiff
path: root/packaging
diff options
context:
space:
mode:
authorMatthew Sackman <matthew@lshift.net>2010-05-15 21:06:00 +0100
committerMatthew Sackman <matthew@lshift.net>2010-05-15 21:06:00 +0100
commita5e282ab97f58eedc7cb5af72d5cab565d31348e (patch)
tree73cb233a8b4a6371a3880a0156404476af3ea4dc /packaging
parentee8fca41ef33791d149338aa7f2fd1c6f1f06d48 (diff)
downloadrabbitmq-server-git-a5e282ab97f58eedc7cb5af72d5cab565d31348e.tar.gz
Correct an accounting bug in queue recovery. By incorrectly counting duplicated acks, we remove too few acks when constructing a segment's combined ackcount, leading to an ackcount that is too high. On (dirty) recovery, this will cause the qi to report it's length as being shorter than in really is, which will then cause the δ record in vq to be too short. Subsequent loading of segments (δ => β/γ in q3) will then crash as more publishes will be found than expected. Note that to trigger this bug, Rabbit must crash/be-killed in the first place, during flushing of the qi journal in a durable queue with persistent messages.
Diffstat (limited to 'packaging')
0 files changed, 0 insertions, 0 deletions