Skip to content

Commit dc54797

Browse files
committed
common: replace member? and put with insert
As the insert logic is embedded in a single transaction, there should be less overhead coming from multiple transaction calls. Signed-off-by: Matteo Cafasso <[email protected]>
1 parent 89b6833 commit dc54797

File tree

1 file changed

+4
-6
lines changed

1 file changed

+4
-6
lines changed

lib/common.ex

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -78,12 +78,10 @@ defmodule RabbitMQ.MessageDeduplicationPlugin.Common do
7878
cache = cache_name(name)
7979

8080
case message_header(message, "x-deduplication-header") do
81-
key when not is_nil(key) ->
82-
case MessageCache.member?(cache, key) do
83-
false -> MessageCache.put(cache, key, ttl)
84-
false
85-
true -> true
86-
end
81+
key when not is_nil(key) -> case MessageCache.insert(cache, key, ttl) do
82+
{:error, :already_exists} -> true
83+
:ok -> false
84+
end
8785
nil -> false
8886
end
8987
end

0 commit comments

Comments
 (0)