diff options
| author | Simon MacMullen <simon@rabbitmq.com> | 2013-06-17 16:38:59 +0100 |
|---|---|---|
| committer | Simon MacMullen <simon@rabbitmq.com> | 2013-06-17 16:38:59 +0100 |
| commit | 3676e3f2f7d2dba706c79f8cd74e0765ce0bbd54 (patch) | |
| tree | 0108809a336fb0cd405ec0213db359ef040b4d55 /src | |
| parent | 589c666e89dcffb5bf596f0682339286622869b4 (diff) | |
| download | rabbitmq-server-git-3676e3f2f7d2dba706c79f8cd74e0765ce0bbd54.tar.gz | |
Throw the key too. And if the server side still fails try to fail with more information.
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_msg_store.erl | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/rabbit_msg_store.erl b/src/rabbit_msg_store.erl index 35c0239f6c..7c2aa13c78 100644 --- a/src/rabbit_msg_store.erl +++ b/src/rabbit_msg_store.erl @@ -630,7 +630,7 @@ client_update_flying(Diff, MsgId, #client_msstate { flying_ets = FlyingEts, false -> try ets:update_counter(FlyingEts, Key, {2, Diff}) of 0 -> ok; Diff -> ok; - Err -> throw({unexpected_flying_ets_counter, Diff, Err}) + Err -> throw({bad_flying_ets_update, Diff, Err, Key}) catch error:badarg -> %% this is guaranteed to succeed since the %% server only removes and updates flying_ets @@ -983,7 +983,8 @@ update_flying(Diff, MsgId, CRef, #msstate { flying_ets = FlyingEts }) -> true = ets:delete_object(FlyingEts, {Key, 0}), process; [{_, 0}] -> true = ets:delete_object(FlyingEts, {Key, 0}), - ignore + ignore; + [{_, Err}] -> throw({bad_flying_ets_record, Diff, Err, Key}) end. write_action({true, not_found}, _MsgId, State) -> |
