diff options
| author | kjnilsson <knilsson@pivotal.io> | 2020-10-05 11:41:12 +0100 |
|---|---|---|
| committer | kjnilsson <knilsson@pivotal.io> | 2020-10-05 11:41:50 +0100 |
| commit | 01ad6dae2f04f463c88bcd844149961b91ecf34d (patch) | |
| tree | cdd2a2ab0d460c136a08b4c1a0fb8dff9792721c /src | |
| parent | 0677cdb2d363ee9393382cccd313a6680cc4f409 (diff) | |
| download | rabbitmq-server-git-01ad6dae2f04f463c88bcd844149961b91ecf34d.tar.gz | |
Backwards compatibility fixes
For classic queues mostly.
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_amqqueue.erl | 14 | ||||
| -rw-r--r-- | src/rabbit_channel.erl | 6 | ||||
| -rw-r--r-- | src/rabbit_classic_queue.erl | 5 |
3 files changed, 22 insertions, 3 deletions
diff --git a/src/rabbit_amqqueue.erl b/src/rabbit_amqqueue.erl index 02d37350b4..78552ae440 100644 --- a/src/rabbit_amqqueue.erl +++ b/src/rabbit_amqqueue.erl @@ -45,6 +45,9 @@ -export([ensure_rabbit_queue_record_is_initialized/1]). -export([format/1]). -export([delete_immediately_by_resource/1]). +-export([delete_crashed/1, + delete_crashed/2, + delete_crashed_internal/2]). -export([pid_of/1, pid_of/2]). -export([mark_local_durable_queues_stopped/1]). @@ -1409,6 +1412,17 @@ delete_immediately_by_resource(Resources) -> delete(Q, IfUnused, IfEmpty, ActingUser) -> rabbit_queue_type:delete(Q, IfUnused, IfEmpty, ActingUser). +%% delete_crashed* INCLUDED FOR BACKWARDS COMPATBILITY REASONS +delete_crashed(Q) when ?amqqueue_is_classic(Q) -> + rabbit_classic_queue:delete_crashed(Q). + +delete_crashed(Q, ActingUser) when ?amqqueue_is_classic(Q) -> + rabbit_classic_queue:delete_crashed(Q, ActingUser). + +-spec delete_crashed_internal(amqqueue:amqqueue(), rabbit_types:username()) -> 'ok'. +delete_crashed_internal(Q, ActingUser) when ?amqqueue_is_classic(Q) -> + rabbit_classic_queue:delete_crashed_internal(Q, ActingUser). + -spec purge(amqqueue:amqqueue()) -> qlen(). purge(Q) when ?is_amqqueue(Q) -> rabbit_queue_type:purge(Q). diff --git a/src/rabbit_channel.erl b/src/rabbit_channel.erl index b5c4ca8ca0..b788180b0f 100644 --- a/src/rabbit_channel.erl +++ b/src/rabbit_channel.erl @@ -2709,7 +2709,7 @@ handle_queue_actions(Actions, #ch{} = State0) -> end, State0, Actions). -find_queue_name_from_pid(Pid, QStates) -> +find_queue_name_from_pid(Pid, QStates) when is_pid(Pid) -> Fun = fun(K, _V, undefined) -> {ok, Q} = rabbit_amqqueue:lookup(K), Pids = get_queue_pids(Q), @@ -2718,7 +2718,9 @@ find_queue_name_from_pid(Pid, QStates) -> K; false -> undefined - end + end; + (_K, _V, Acc) -> + Acc end, rabbit_queue_type:fold_state(Fun, undefined, QStates). diff --git a/src/rabbit_classic_queue.erl b/src/rabbit_classic_queue.erl index cd601eb5ca..c9d9b951c9 100644 --- a/src/rabbit_classic_queue.erl +++ b/src/rabbit_classic_queue.erl @@ -336,7 +336,10 @@ info(Q, Items) -> {ok, Result} -> Result; {error, _Err} -> - [] + []; + Result when is_list(Result) -> + %% this is a backwards compatibility clause + Result end. -spec purge(amqqueue:amqqueue()) -> |
