Skip to content

Commit 181b6db

Browse files
authored
Merge pull request #453 from splitio/redis-unique-keys
Removed pipeline
2 parents 631c74b + 3e8888b commit 181b6db

File tree

1 file changed

+14
-6
lines changed

1 file changed

+14
-6
lines changed

lib/splitclient-rb/cache/senders/impressions_adapter/redis_sender.rb

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,9 @@ def initialize(config)
1212
end
1313

1414
def record_uniques_key(uniques)
15-
return if uniques.nil? || uniques == {}
15+
return if uniques.nil? || uniques.empty?
1616

17-
size = @adapter.redis.pipelined do |pipeline|
18-
uniques.each do |key, value|
19-
pipeline.rpush(unique_keys_key, { f: key, ks: value.to_a }.to_json)
20-
end
21-
end
17+
size = @adapter.add_to_queue(unique_keys_key, uniques_formatter(uniques))
2218

2319
@adapter.expire(unique_keys_key, EXPIRE_SECONDS) if uniques.length == size.last
2420
rescue StandardError => e
@@ -48,6 +44,18 @@ def expire_impressions_count_key(impressions_count, pipeline_result)
4844
@adapter.expire(impressions_count_key, EXPIRE_SECONDS) if impressions_count.size == hlen && (pipeline_result.sum - hlen) == total_count
4945
end
5046

47+
def uniques_formatter(uniques)
48+
to_return = []
49+
uniques.each do |key, value|
50+
to_return << {
51+
f: key,
52+
ks: value.to_a
53+
}.to_json
54+
end
55+
56+
to_return
57+
end
58+
5159
def impressions_count_key
5260
"#{@config.redis_namespace}.impressions.count"
5361
end

0 commit comments

Comments
 (0)