diff options
author | Matthias Radestock <matthias@rabbitmq.com> | 2012-09-25 22:00:52 +0100 |
---|---|---|
committer | Matthias Radestock <matthias@rabbitmq.com> | 2012-09-25 22:00:52 +0100 |
commit | 5105a8ae3f3d2901f2161cd4cf3229e297990cfa (patch) | |
tree | c0f7b8872b111244d87764c806eddf82b9736ba2 | |
parent | e160a9edc08f109b32426145c6ad8ced10b9f911 (diff) | |
download | rabbitmq-server-5105a8ae3f3d2901f2161cd4cf3229e297990cfa.tar.gz |
Is this better? I'm not sure.
-rw-r--r-- | src/rabbit_mirror_queue_slave.erl | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/rabbit_mirror_queue_slave.erl b/src/rabbit_mirror_queue_slave.erl index 92a8ed9f..5d20aae4 100644 --- a/src/rabbit_mirror_queue_slave.erl +++ b/src/rabbit_mirror_queue_slave.erl @@ -894,12 +894,11 @@ set_delta(NewDelta, State = #state { depth_delta = Delta }) -> update_delta(_DeltaChange, State = #state { depth_delta = undefined }) -> State; update_delta(DeltaChange, State = #state { depth_delta = Delta }) -> - case {Delta, Delta + DeltaChange} of - {0, D} -> 0 = D, %% assertion: we cannot become unsync'ed - State; - {_, 0} -> ok = record_synchronised(State#state.q), - State #state { depth_delta = 0 }; - {_, D} when D > 0 -> State #state { depth_delta = D } + NewDelta = Delta + DeltaChange, + case Delta of + 0 -> 0 = NewDelta, %% assertion: we cannot become unsync'ed + State; + _ -> set_delta(NewDelta, State #state { depth_delta = undefined }) end. record_synchronised(#amqqueue { name = QName }) -> |