diff options
| -rw-r--r-- | src/rabbit_realm.erl | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/rabbit_realm.erl b/src/rabbit_realm.erl index 7b2d730ca2..4668be26d4 100644 --- a/src/rabbit_realm.erl +++ b/src/rabbit_realm.erl @@ -133,12 +133,11 @@ parent_table_for_resource(#resource{kind = exchange}) -> exchange; parent_table_for_resource(#resource{kind = queue}) -> amqqueue. -check(#resource{kind = realm, name = Realm}, Resource = #resource{}) -> - F = mnesia:match_object(#realm_resource{resource = Resource#resource.name, realm = Realm}), - case mnesia:async_dirty(F) of - {atomic,[]} -> false; - {atomic,_} -> true; - _ -> false +check(#resource{kind = realm, name = Realm}, R = #resource{name = Name}) -> + case mnesia:dirty_match_object( + {realm_table_for_resource(R), Realm, Name}) of + [] -> false; + _ -> true end. % Requires a mnesia transaction. |
