summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkjnilsson <knilsson@pivotal.io>2019-04-11 16:39:50 +0100
committerkjnilsson <knilsson@pivotal.io>2019-04-11 16:39:50 +0100
commite2919659cb0e6537d4b43c3ad7cebf08ad1414be (patch)
treefb5d70cd2c98a2de41160a4eaf76e5d5495c8a40
parent1c182e755f35b0b65a9137cb9d0c4ea027d01e97 (diff)
downloadrabbitmq-server-git-e2919659cb0e6537d4b43c3ad7cebf08ad1414be.tar.gz
Correct log effect return type
It should return a list of effects in recent Ra versions. Also increase ra segments size as this appears beneficial for use with low in-memory limits.
-rw-r--r--src/rabbit.erl2
-rw-r--r--src/rabbit_fifo.erl21
2 files changed, 14 insertions, 9 deletions
diff --git a/src/rabbit.erl b/src/rabbit.erl
index dafdaed5c9..867a72f0b6 100644
--- a/src/rabbit.erl
+++ b/src/rabbit.erl
@@ -540,6 +540,8 @@ start_loaded_apps(Apps, RestartTypes) ->
%% make Ra use a custom logger that dispatches to lager instead of the
%% default OTP logger
application:set_env(ra, logger_module, rabbit_log_ra_shim),
+ %% use a larger segments size for queues
+ application:set_env(ra, segment_max_entries, 32768),
ConfigEntryDecoder = case application:get_env(rabbit, config_entry_decoder) of
undefined ->
[];
diff --git a/src/rabbit_fifo.erl b/src/rabbit_fifo.erl
index f8f4e78943..6f168bf78e 100644
--- a/src/rabbit_fifo.erl
+++ b/src/rabbit_fifo.erl
@@ -1371,17 +1371,20 @@ send_msg_effect({CTag, CPid}, Msgs) ->
send_log_effect({CTag, CPid}, IdxMsgs) ->
{RaftIdxs, Data} = lists:unzip(IdxMsgs),
- {log, RaftIdxs, fun(Log) ->
- Msgs = lists:zipwith(fun({enqueue, _, _, Msg}, {MsgId, Header}) ->
- {MsgId, {Header, Msg}}
- end, Log, Data),
- {send_msg, CPid, {delivery, CTag, Msgs}, ra_event}
- end}.
+ {log, RaftIdxs,
+ fun(Log) ->
+ Msgs = lists:zipwith(fun({enqueue, _, _, Msg}, {MsgId, Header}) ->
+ {MsgId, {Header, Msg}}
+ end, Log, Data),
+ [{send_msg, CPid, {delivery, CTag, Msgs}, ra_event}]
+ end}.
reply_log_effect(RaftIdx, MsgId, Header, Ready, From) ->
- {log, RaftIdx, fun({enqueue, _, _, Msg}) ->
- {reply, From, {wrap_reply, {dequeue, {MsgId, {Header, Msg}}, Ready}}}
- end}.
+ {log, RaftIdx,
+ fun({enqueue, _, _, Msg}) ->
+ [{reply, From, {wrap_reply,
+ {dequeue, {MsgId, {Header, Msg}}, Ready}}}]
+ end}.
checkout_one(#?MODULE{service_queue = SQ0,
messages = Messages0,