diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_amqqueue.erl | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/rabbit_amqqueue.erl b/src/rabbit_amqqueue.erl index 88d7c597f9..ac79d56358 100644 --- a/src/rabbit_amqqueue.erl +++ b/src/rabbit_amqqueue.erl @@ -1154,11 +1154,18 @@ queues_to_delete_when_node_down(NodeDown) -> end). notify_queue_binding_deletions(QueueDeletions) -> - NotifyBindingDeletions = rabbit_binding:process_deletions( - lists:foldl(fun rabbit_binding:combine_deletions/2, - rabbit_binding:new_deletions(), QueueDeletions), - ?INTERNAL_USER), - NotifyBindingDeletions(). + rabbit_misc:execute_mnesia_tx_with_tail( + fun() -> + rabbit_binding:process_deletions( + lists:foldl( + fun rabbit_binding:combine_deletions/2, + rabbit_binding:new_deletions(), + QueueDeletions + ), + ?INTERNAL_USER + ) + end + ). notify_queues_deleted(QueueDeletions) -> lists:foreach( |
