diff options
author | Tim Watson <tim@rabbitmq.com> | 2014-02-05 16:57:55 +0000 |
---|---|---|
committer | Tim Watson <tim@rabbitmq.com> | 2014-02-05 16:57:55 +0000 |
commit | b41f0d60f8827383ab908089f9956fb5be1beb45 (patch) | |
tree | 698d190768f145d27856629ffc1773e676704444 | |
parent | 5c3d6d8a3d6c010d8278d836d0eb391d07b9d8aa (diff) | |
download | rabbitmq-server-b41f0d60f8827383ab908089f9956fb5be1beb45.tar.gz |
Use dirty opts to find durable queues during startup (and optimise)
-rw-r--r-- | src/rabbit_amqqueue.erl | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/rabbit_amqqueue.erl b/src/rabbit_amqqueue.erl index 411ae502..a6793f94 100644 --- a/src/rabbit_amqqueue.erl +++ b/src/rabbit_amqqueue.erl @@ -221,14 +221,13 @@ start(Qs) -> find_durable_queues() -> Node = node(), - %% TODO: use dirty ops instead - rabbit_misc:execute_mnesia_transaction( + mnesia:async_dirty( fun () -> qlc:e(qlc:q([Q || Q = #amqqueue{name = Name, pid = Pid} <- mnesia:table(rabbit_durable_queue), - mnesia:read(rabbit_queue, Name, read) =:= [], - node(Pid) == Node])) + node(Pid) == Node, + mnesia:read(rabbit_queue, Name, read) =:= []])) end). recover_durable_queues(QueuesAndRecoveryTerms) -> |