diff options
author | Matthias Radestock <matthias@rabbitmq.com> | 2011-10-17 19:31:49 +0100 |
---|---|---|
committer | Matthias Radestock <matthias@rabbitmq.com> | 2011-10-17 19:31:49 +0100 |
commit | d7ff83ad6ba5b24eee3bac34f1d70370f6e7f287 (patch) | |
tree | d8f873103606f84fb8d30bbb87be2ab59feb08e7 /src/rabbit_msg_store.erl | |
parent | f993f9cdd966b9c32d9f4476956d37e337e87126 (diff) | |
download | rabbitmq-server-d7ff83ad6ba5b24eee3bac34f1d70370f6e7f287.tar.gz |
explain why client_update_flying phase 3 will always succeed
Diffstat (limited to 'src/rabbit_msg_store.erl')
-rw-r--r-- | src/rabbit_msg_store.erl | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/rabbit_msg_store.erl b/src/rabbit_msg_store.erl index c95cff1e..167ab41c 100644 --- a/src/rabbit_msg_store.erl +++ b/src/rabbit_msg_store.erl @@ -618,6 +618,9 @@ client_update_flying(Diff, MsgId, #client_msstate { flying_ets = FlyingEts, true -> ok; false -> try ets:update_counter(FlyingEts, Key, {2, Diff}) catch error:badarg -> + %% this is guaranteed to succeed since the + %% server only removes and updates flying_ets + %% entries; it never inserts them true = ets:insert_new(FlyingEts, {Key, Diff}) end, ok |