summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Bridgen <mikeb@rabbitmq.com>2010-08-05 15:24:33 +0100
committerMichael Bridgen <mikeb@rabbitmq.com>2010-08-05 15:24:33 +0100
commitad6fde4fd7a44a44dda489f07248c0ba35ead067 (patch)
treea248e0fe6e34e4b111b55054930ead6e9a30c539
parent2dd6a8c56708c31b13bcd9829f508029a4f4fc10 (diff)
parent5f1983c46f1a8526a68491ba6b5e279f94b52dac (diff)
downloadrabbitmq-server-ad6fde4fd7a44a44dda489f07248c0ba35ead067.tar.gz
Merge bug20078 (don't fail commits when queues go missing)
-rw-r--r--src/rabbit_amqqueue.erl8
1 files changed, 2 insertions, 6 deletions
diff --git a/src/rabbit_amqqueue.erl b/src/rabbit_amqqueue.erl
index f85a15d3..b55d5b21 100644
--- a/src/rabbit_amqqueue.erl
+++ b/src/rabbit_amqqueue.erl
@@ -386,7 +386,6 @@ reject(QPid, MsgIds, Requeue, ChPid) ->
commit_all(QPids, Txn, ChPid) ->
safe_delegate_call_ok(
- fun (QPid) -> exit({queue_disappeared, QPid}) end,
fun (QPid) -> gen_server2:call(QPid, {commit, Txn, ChPid}, infinity) end,
QPids).
@@ -396,9 +395,6 @@ rollback_all(QPids, Txn, ChPid) ->
notify_down_all(QPids, ChPid) ->
safe_delegate_call_ok(
- %% we don't care if the queue process has terminated in the
- %% meantime
- fun (_) -> ok end,
fun (QPid) -> gen_server2:call(QPid, {notify_down, ChPid}, infinity) end,
QPids).
@@ -493,11 +489,11 @@ pseudo_queue(QueueName, Pid) ->
arguments = [],
pid = Pid}.
-safe_delegate_call_ok(H, F, Pids) ->
+safe_delegate_call_ok(F, Pids) ->
{_, Bad} = delegate:invoke(Pids,
fun (Pid) ->
rabbit_misc:with_exit_handler(
- fun () -> H(Pid) end,
+ fun () -> ok end,
fun () -> F(Pid) end)
end),
case Bad of