diff options
author | Simon MacMullen <simon@lshift.net> | 2010-04-22 18:29:25 +0100 |
---|---|---|
committer | Simon MacMullen <simon@lshift.net> | 2010-04-22 18:29:25 +0100 |
commit | 05f24d96759eeb8f1c54996e8106d203dddf9b69 (patch) | |
tree | 152d2cb28009d3af3e2ed5ecec18bd193ccf08f2 | |
parent | 4e763135f0b562a9b7356ff4d62a10a1d9adc0ef (diff) | |
download | rabbitmq-server-05f24d96759eeb8f1c54996e8106d203dddf9b69.tar.gz |
Add / fix specs, and remove some unreachable code.
-rw-r--r-- | src/delegate.erl | 19 | ||||
-rw-r--r-- | src/delegate_sup.erl | 8 | ||||
-rw-r--r-- | src/rabbit_amqqueue.erl | 2 | ||||
-rw-r--r-- | src/rabbit_channel.erl | 11 |
4 files changed, 32 insertions, 8 deletions
diff --git a/src/delegate.erl b/src/delegate.erl index 68739324..f3c3f097 100644 --- a/src/delegate.erl +++ b/src/delegate.erl @@ -44,6 +44,25 @@ %%---------------------------------------------------------------------------- +-ifdef(use_specs). + +-type(serverref() :: atom() | {atom(), atom()} | {'global', term()} | pid()). + +-spec(start_link/1 :: (non_neg_integer()) -> {'ok', pid()}). +-spec(cast/2 :: (pid() | [pid()], fun((pid()) -> any())) -> 'ok'). +-spec(call/2 :: (pid() | [pid()], fun((pid()) -> A)) -> A). + +-spec(gs2_call/3 :: + (serverref(), any(), non_neg_integer() | 'infinity') -> any()). +-spec(gs2_pcall/4 :: + (serverref(), number(), any(), non_neg_integer() | 'infinity') -> any()). +-spec(gs2_cast/2 :: (serverref(), any()) -> 'ok'). +-spec(gs2_pcast/3 :: (serverref(), number(), any()) -> 'ok'). + +-spec(server/1 :: (node() | non_neg_integer()) -> atom()). +-spec(process_count/0 :: () -> non_neg_integer()). + +-endif. %%---------------------------------------------------------------------------- diff --git a/src/delegate_sup.erl b/src/delegate_sup.erl index dd3d0eef..1f351406 100644 --- a/src/delegate_sup.erl +++ b/src/delegate_sup.erl @@ -41,6 +41,14 @@ %%---------------------------------------------------------------------------- +-ifdef(use_specs). + +-spec(start_link/0 :: () -> {'ok', pid()} | 'ignore' | {'error', any()}). + +-endif. + +%%---------------------------------------------------------------------------- + start_link() -> supervisor:start_link({local, ?SERVER}, ?MODULE, []). diff --git a/src/rabbit_amqqueue.erl b/src/rabbit_amqqueue.erl index 1dd92403..efa62e1b 100644 --- a/src/rabbit_amqqueue.erl +++ b/src/rabbit_amqqueue.erl @@ -92,7 +92,7 @@ -spec(requeue/3 :: (pid(), [msg_id()], pid()) -> 'ok'). -spec(ack/4 :: (pid(), maybe(txn()), [msg_id()], pid()) -> 'ok'). -spec(commit_all/3 :: ([pid()], txn(), pid()) -> ok_or_errors()). --spec(rollback_all/3 :: ([pid()], txn(), pid()) -> ok_or_errors()). +-spec(rollback_all/3 :: ([pid()], txn(), pid()) -> 'ok'). -spec(notify_down_all/2 :: ([pid()], pid()) -> ok_or_errors()). -spec(limit_all/3 :: ([pid()], pid(), pid() | 'undefined') -> ok_or_errors()). -spec(claim_queue/2 :: (amqqueue(), pid()) -> 'ok' | 'locked'). diff --git a/src/rabbit_channel.erl b/src/rabbit_channel.erl index 7d3cd722..1f16ec08 100644 --- a/src/rabbit_channel.erl +++ b/src/rabbit_channel.erl @@ -944,13 +944,10 @@ internal_rollback(State = #ch{transaction_id = TxnKey, [self(), queue:len(UAQ), queue:len(UAMQ)]), - case rabbit_amqqueue:rollback_all(sets:to_list(Participants), - TxnKey, self()) of - ok -> NewUAMQ = queue:join(UAQ, UAMQ), - new_tx(State#ch{unacked_message_q = NewUAMQ}); - {error, Errors} -> rabbit_misc:protocol_error( - internal_error, "rollback failed: ~w", [Errors]) - end. + ok = rabbit_amqqueue:rollback_all(sets:to_list(Participants), + TxnKey, self()), + NewUAMQ = queue:join(UAQ, UAMQ), + new_tx(State#ch{unacked_message_q = NewUAMQ}). rollback_and_notify(State = #ch{transaction_id = none}) -> notify_queues(State); |