diff options
| author | Simon MacMullen <simon@rabbitmq.com> | 2012-07-09 18:30:52 +0100 |
|---|---|---|
| committer | Simon MacMullen <simon@rabbitmq.com> | 2012-07-09 18:30:52 +0100 |
| commit | 33bc43685c1959040f4ff0851516b590084bd346 (patch) | |
| tree | 6f7011156951fe54da286ae695c2275cb6e801a1 /src | |
| parent | d01e05ef21c97d09e6395d12db214eda4ae75e15 (diff) | |
| download | rabbitmq-server-git-33bc43685c1959040f4ff0851516b590084bd346.tar.gz | |
Various fixes.
Diffstat (limited to 'src')
| -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, |
