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 | 8938793638abbbb0abc3c14f51d95dfa0931424c (patch) | |
| tree | d8f873103606f84fb8d30bbb87be2ab59feb08e7 | |
| parent | 143e1a9ef130be85efa7407ec378adbc175ffdda (diff) | |
| download | rabbitmq-server-git-8938793638abbbb0abc3c14f51d95dfa0931424c.tar.gz | |
explain why client_update_flying phase 3 will always succeed
| -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 c95cff1e27..167ab41c8c 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 |
