diff options
| -rw-r--r-- | src/rabbit_amqqueue_process.erl | 24 | ||||
| -rw-r--r-- | src/rabbit_mirror_queue_master.erl | 2 |
2 files changed, 9 insertions, 17 deletions
diff --git a/src/rabbit_amqqueue_process.erl b/src/rabbit_amqqueue_process.erl index 5a3361ab3e..9404c53f40 100644 --- a/src/rabbit_amqqueue_process.erl +++ b/src/rabbit_amqqueue_process.erl @@ -923,19 +923,19 @@ i(consumers, _) -> i(memory, _) -> {memory, M} = process_info(self(), memory), M; -i(slave_pids, #q{q = Q = #amqqueue{name = Name}}) -> +i(slave_pids, #q{q = #amqqueue{name = Name}}) -> + {ok, Q = #amqqueue{slave_pids = SPids}} = + rabbit_amqqueue:lookup(Name), case rabbit_mirror_queue_misc:is_mirrored(Q) of false -> ''; - true -> {ok, #amqqueue{slave_pids = SPids}} = - rabbit_amqqueue:lookup(Name), - SPids + true -> SPids end; -i(synchronised_slave_pids, #q{q = Q = #amqqueue{name = Name}}) -> +i(synchronised_slave_pids, #q{q = #amqqueue{name = Name}}) -> + {ok, Q = #amqqueue{sync_slave_pids = SSPids}} = + rabbit_amqqueue:lookup(Name), case rabbit_mirror_queue_misc:is_mirrored(Q) of false -> ''; - true -> {ok, #amqqueue{sync_slave_pids = SSPids}} = - rabbit_amqqueue:lookup(Name), - SSPids + true -> SSPids end; i(backing_queue_status, #q{backing_queue_state = BQS, backing_queue = BQ}) -> BQ:status(BQS); @@ -1191,14 +1191,6 @@ handle_call(stop_mirroring, _From, State = #q{backing_queue = BQ, backing_queue_state = BQS}) -> BQ = rabbit_mirror_queue_master, %% assertion {BQ1, BQS1} = BQ:stop_mirroring(BQS), - rabbit_misc:execute_mnesia_transaction( - fun () -> - case mnesia:read({rabbit_queue, qname(State)}) of - [] -> ok; - [Q] -> rabbit_amqqueue:store_queue( - Q#amqqueue{slave_pids = undefined}) - end - end), reply(ok, State#q{backing_queue = BQ1, backing_queue_state = BQS1}); diff --git a/src/rabbit_mirror_queue_master.erl b/src/rabbit_mirror_queue_master.erl index e5ca085dbc..2a04d87250 100644 --- a/src/rabbit_mirror_queue_master.erl +++ b/src/rabbit_mirror_queue_master.erl @@ -111,7 +111,7 @@ stop_mirroring(State = #state { coordinator = CPid, backing_queue = BQ, backing_queue_state = BQS }) -> unlink(CPid), - stop_all_slaves(unmirroring, State), + stop_all_slaves(shutdown, State), {BQ, BQS}. terminate({shutdown, dropped} = Reason, |
