diff --git a/.gitignore b/.gitignore index 39b8748..178300a 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ Gemfile.lock redis-objects-*.gem coverage/ .DS_Store +.idea/ diff --git a/lib/redis/list.rb b/lib/redis/list.rb index 2b06f90..4ecf073 100644 --- a/lib/redis/list.rb +++ b/lib/redis/list.rb @@ -31,9 +31,9 @@ def push(*values) # Remove a member from the end of the list. Redis: RPOP def pop(n=nil) if n - result, = redis.multi do - redis.lrange(key, -n, -1) - redis.ltrim(key, 0, -n - 1) + result, = redis.multi do |pipeline| + pipeline.lrange(key, -n, -1) + pipeline.ltrim(key, 0, -n - 1) end unmarshal result else @@ -65,9 +65,9 @@ def unshift(*values) # Remove a member from the start of the list. Redis: LPOP def shift(n=nil) if n - result, = redis.multi do - redis.lrange(key, 0, n - 1) - redis.ltrim(key, n, -1) + result, = redis.multi do |pipeline| + pipeline.lrange(key, 0, n - 1) + pipeline.ltrim(key, n, -1) end unmarshal result else diff --git a/lib/redis/sorted_set.rb b/lib/redis/sorted_set.rb index 5b7cac1..c6df6dc 100644 --- a/lib/redis/sorted_set.rb +++ b/lib/redis/sorted_set.rb @@ -204,11 +204,11 @@ def intersection(*sets) result = nil temp_key = :"#{key}:intersection:#{Time.current.to_i + rand}" - redis.multi do + redis.multi do |pipeline| interstore(temp_key, *sets) - redis.expire(temp_key, 1) + pipeline.expire(temp_key, 1) - result = redis.zrange(temp_key, 0, -1) + result = pipeline.zrange(temp_key, 0, -1) end result.value @@ -241,11 +241,11 @@ def union(*sets) result = nil temp_key = :"#{key}:union:#{Time.current.to_i + rand}" - redis.multi do + redis.multi do |pipeline| unionstore(temp_key, *sets) - redis.expire(temp_key, 1) + pipeline.expire(temp_key, 1) - result = redis.zrange(temp_key, 0, -1) + result = pipeline.zrange(temp_key, 0, -1) end result.value