From a0446d2ec2cf7b9fef2e5b5d2adc2b641cebae3a Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Mon, 26 Jan 2009 11:47:50 +0000 Subject: more efficient locking --- src/rabbit_access_control.erl | 6 +++--- src/rabbit_exchange.erl | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/rabbit_access_control.erl b/src/rabbit_access_control.erl index 883425d0..394eb2b1 100644 --- a/src/rabbit_access_control.erl +++ b/src/rabbit_access_control.erl @@ -171,7 +171,7 @@ check_resource_access(Username, add_user(Username, Password) -> R = rabbit_misc:execute_mnesia_transaction( fun () -> - case mnesia:read({rabbit_user, Username}) of + case mnesia:wread({rabbit_user, Username}) of [] -> ok = mnesia:write(rabbit_user, #user{username = Username, @@ -198,7 +198,7 @@ delete_user(Username) -> username = Username, virtual_host = '_'}, permission = '_'}, - read)], + write)], ok end)), rabbit_log:info("Deleted user ~p~n", [Username]), @@ -226,7 +226,7 @@ lookup_user(Username) -> add_vhost(VHostPath) -> R = rabbit_misc:execute_mnesia_transaction( fun () -> - case mnesia:read({rabbit_vhost, VHostPath}) of + case mnesia:wread({rabbit_vhost, VHostPath}) of [] -> ok = mnesia:write(rabbit_vhost, #vhost{virtual_host = VHostPath}, diff --git a/src/rabbit_exchange.erl b/src/rabbit_exchange.erl index b04a5b37..19efd9fc 100644 --- a/src/rabbit_exchange.erl +++ b/src/rabbit_exchange.erl @@ -309,7 +309,7 @@ delete_bindings_for_exchange(ExchangeName) -> rabbit_route, #route{binding = #binding{exchange_name = ExchangeName, _ = '_'}}, - read)], + write)], ok. delete_bindings_for_queue(QueueName) -> -- cgit v1.2.1