Skip to content

Commit 4399315

Browse files
ansdkjnilsson
authored andcommitted
Optimise get_lowest_index/1
Avoid building a list.
1 parent b4f44ad commit 4399315

File tree

1 file changed

+8
-9
lines changed

1 file changed

+8
-9
lines changed

deps/rabbit/src/rabbit_fifo_pq.erl

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -131,15 +131,14 @@ indexes(#?STATE{buckets = Buckets}) ->
131131
get_lowest_index(#?STATE{len = 0}) ->
132132
undefined;
133133
get_lowest_index(#?STATE{buckets = Buckets}) ->
134-
lists:min(
135-
maps:fold(fun (_, Q, Acc) ->
136-
case peek(Q) of
137-
empty ->
138-
Acc;
139-
Msg ->
140-
[msg_idx(Msg) | Acc]
141-
end
142-
end, [], Buckets)).
134+
maps:fold(fun (_, Q, Acc) ->
135+
case peek(Q) of
136+
empty ->
137+
Acc;
138+
Msg ->
139+
min(msg_idx(Msg), Acc)
140+
end
141+
end, undefined, Buckets).
143142

144143
-spec overview(state()) ->
145144
#{len := non_neg_integer(),

0 commit comments

Comments
 (0)