diff options
| author | Alexandru Scvortov <alexandru@rabbitmq.com> | 2011-08-10 11:00:08 +0100 |
|---|---|---|
| committer | Alexandru Scvortov <alexandru@rabbitmq.com> | 2011-08-10 11:00:08 +0100 |
| commit | 4f722487176d49566a29da05dde05c79e7d174e2 (patch) | |
| tree | 0c6d5f01a58522eebbaa836dd8d3a0d7c1209b6b /src | |
| parent | 20f581d196216fc48f84c884d4fa9bd77adf9aac (diff) | |
| parent | f6f03b1afc93639d4cc5f4c66a2e9392506b434c (diff) | |
| download | rabbitmq-server-git-4f722487176d49566a29da05dde05c79e7d174e2.tar.gz | |
merge default into bug23979
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit.erl | 2 | ||||
| -rw-r--r-- | src/rabbit_backing_queue_qc.erl | 4 | ||||
| -rw-r--r-- | src/rabbit_node_monitor.erl | 7 | ||||
| -rw-r--r-- | src/rabbit_queue_index.erl | 16 |
4 files changed, 12 insertions, 17 deletions
diff --git a/src/rabbit.erl b/src/rabbit.erl index e067607da6..46f7d9d1f3 100644 --- a/src/rabbit.erl +++ b/src/rabbit.erl @@ -187,7 +187,7 @@ -spec(prepare/0 :: () -> 'ok'). -spec(start/0 :: () -> 'ok'). -spec(stop/0 :: () -> 'ok'). --spec(stop_and_halt/0 :: () -> 'ok'). +-spec(stop_and_halt/0 :: () -> no_return()). -spec(rotate_logs/1 :: (file_suffix()) -> rabbit_types:ok_or_error(any())). -spec(status/0 :: () -> [{pid, integer()} | diff --git a/src/rabbit_backing_queue_qc.erl b/src/rabbit_backing_queue_qc.erl index d358a041ef..22691ef9d3 100644 --- a/src/rabbit_backing_queue_qc.erl +++ b/src/rabbit_backing_queue_qc.erl @@ -106,7 +106,7 @@ qc_publish(#state{bqstate = BQ}) -> [qc_message(), #message_properties{needs_confirming = frequency([{1, true}, {20, false}]), - expiry = choose(0, 10)}, + expiry = oneof([undefined | lists:seq(1, 10)])}, self(), BQ]}. qc_publish_multiple(#state{bqstate = BQ}) -> @@ -375,7 +375,7 @@ rand_choice(List) -> [lists:nth(random:uniform(length(List)), List)]. dropfun(Props) -> Expiry = eval({call, erlang, element, [?RECORD_INDEX(expiry, message_properties), Props]}), - Expiry =/= 0. + Expiry =/= 1. drop_messages(Messages) -> case queue:out(Messages) of diff --git a/src/rabbit_node_monitor.erl b/src/rabbit_node_monitor.erl index f82c831fd1..96a68b721f 100644 --- a/src/rabbit_node_monitor.erl +++ b/src/rabbit_node_monitor.erl @@ -60,24 +60,19 @@ notify_cluster() -> %%-------------------------------------------------------------------- init([]) -> - ok = net_kernel:monitor_nodes(true), {ok, no_state}. handle_call(_Request, _From, State) -> {noreply, State}. handle_cast({rabbit_running_on, Node}, State) -> - rabbit_log:info("node ~p up~n", [Node]), + rabbit_log:info("rabbit on ~p up~n", [Node]), erlang:monitor(process, {rabbit, Node}), ok = rabbit_alarm:on_node_up(Node), {noreply, State}; handle_cast(_Msg, State) -> {noreply, State}. -handle_info({nodedown, Node}, State) -> - rabbit_log:info("node ~p down~n", [Node]), - ok = handle_dead_rabbit(Node), - {noreply, State}; handle_info({'DOWN', _MRef, process, {rabbit, Node}, _Reason}, State) -> rabbit_log:info("node ~p lost 'rabbit'~n", [Node]), ok = handle_dead_rabbit(Node), diff --git a/src/rabbit_queue_index.erl b/src/rabbit_queue_index.erl index bf89cdb26e..636913b5c8 100644 --- a/src/rabbit_queue_index.erl +++ b/src/rabbit_queue_index.erl @@ -569,13 +569,13 @@ add_to_journal(SeqId, Action, State = #qistate { dirty_count = DCount, add_to_journal(RelSeq, Action, Segment = #segment { journal_entries = JEntries, unacked = UnackedCount }) -> - Segment1 = Segment #segment { - journal_entries = add_to_journal(RelSeq, Action, JEntries) }, - case Action of - del -> Segment1; - ack -> Segment1 #segment { unacked = UnackedCount - 1 }; - ?PUB -> Segment1 #segment { unacked = UnackedCount + 1 } - end; + Segment #segment { + journal_entries = add_to_journal(RelSeq, Action, JEntries), + unacked = UnackedCount + case Action of + ?PUB -> +1; + del -> 0; + ack -> -1 + end}; add_to_journal(RelSeq, Action, JEntries) -> Val = case array:get(RelSeq, JEntries) of @@ -1013,7 +1013,7 @@ add_queue_ttl_segment(<<?PUB_PREFIX:?PUB_PREFIX_BITS, IsPersistentNum:1, {[<<?PUB_PREFIX:?PUB_PREFIX_BITS, IsPersistentNum:1, RelSeq:?REL_SEQ_BITS>>, MsgId, expiry_to_binary(undefined)], Rest}; add_queue_ttl_segment(<<?REL_SEQ_ONLY_PREFIX:?REL_SEQ_ONLY_PREFIX_BITS, - RelSeq:?REL_SEQ_BITS, Rest>>) -> + RelSeq:?REL_SEQ_BITS, Rest/binary>>) -> {<<?REL_SEQ_ONLY_PREFIX:?REL_SEQ_ONLY_PREFIX_BITS, RelSeq:?REL_SEQ_BITS>>, Rest}; add_queue_ttl_segment(_) -> |
