diff options
| author | Michael Klishin <michael@novemberain.com> | 2018-08-30 13:21:17 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-08-30 13:21:17 +0300 |
| commit | 25a3fe486a39d42c13680cf8f8e6990c0f13a511 (patch) | |
| tree | 6475da97519ac829614d1413cd8380c770437d5c /src | |
| parent | 46ca0db8b09cd8e7f3d73da6b0695ce8832ce083 (diff) | |
| parent | 62b40f7e03f9a176f5de8bd27b5795085da741c7 (diff) | |
| download | rabbitmq-server-git-25a3fe486a39d42c13680cf8f8e6990c0f13a511.tar.gz | |
Merge pull request #1689 from rabbitmq/forgiving-binding-removal-on-queue-deletion
Don't error when a queue that's being deleted has no bindings left to remove on transaction retries
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_amqqueue.erl | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/rabbit_amqqueue.erl b/src/rabbit_amqqueue.erl index 5285689b58..ca4fb1c019 100644 --- a/src/rabbit_amqqueue.erl +++ b/src/rabbit_amqqueue.erl @@ -178,11 +178,9 @@ -spec notify_decorators(rabbit_types:amqqueue()) -> 'ok'. -spec resume(pid(), pid()) -> 'ok'. -spec internal_delete(name(), rabbit_types:username()) -> - rabbit_types:ok_or_error('not_found') | - rabbit_types:connection_exit() | + 'ok' | rabbit_types:connection_exit() | fun (() -> - rabbit_types:ok_or_error('not_found') | - rabbit_types:connection_exit()). + 'ok' | rabbit_types:connection_exit()). -spec run_backing_queue (pid(), atom(), (fun ((atom(), A) -> {[rabbit_types:msg_id()], A}))) -> 'ok'. @@ -995,7 +993,7 @@ internal_delete(QueueName, ActingUser, Reason) -> case {mnesia:wread({rabbit_queue, QueueName}), mnesia:wread({rabbit_durable_queue, QueueName})} of {[], []} -> - rabbit_misc:const({error, not_found}); + rabbit_misc:const(ok); _ -> Deletions = internal_delete1(QueueName, false, Reason), T = rabbit_binding:process_deletions(Deletions, |
