redis-cluster-client 0.3.14 → 0.3.15

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 909179c8cf02cee3894f4cb11c7d51e8de13d667345daceb3c0f13306b661613
4
- data.tar.gz: 959e61ae91001a48177cc19e72e4e7af3f95224481080751cebf2c8d04f2665c
3
+ metadata.gz: c0492c31a84cc5a5982973891f9c305d67d6121f03fb12fef76b7045a8960421
4
+ data.tar.gz: e2531e6b21591974103c794cea27fa7383fb3c7aef27ab08850d7468bc6555c0
5
5
  SHA512:
6
- metadata.gz: c5e4ce403a09a18bfa94d5e0bf70db3277d16bcb05a8d300b4555ecb4f3b743a50af10a19ffe5988f8f60e06813a5dd147895410fb02b1f15522907a6dfe4143
7
- data.tar.gz: 56154b82f8ced444d757df7b6438d58d2d2d187917f61aa40e78b980811e7b597d090c1a982d72b6ca100fa6e606a7719faeec9eef0688d102058d4976178e41
6
+ metadata.gz: 472a05c3122f7847df1fa316ac1e20722abb5c34a299daf2dee71cc71a3cf74437100f97c9ed2105a105b517bdf01066a8702296182126a232d5b7cc463caac0
7
+ data.tar.gz: 9c5bfa33629d5ec005e20c8672748967796a150a190a7aa9de46f11225731b0cec6ce02b6e00b7b94ba1703d5bd103e584d538ccf5219a10c713fbc206f07598
@@ -285,7 +285,7 @@ class RedisClient
285
285
 
286
286
  def call_multiple_nodes(clients, method, command, args, &block)
287
287
  results, errors = try_map(clients) do |_, client|
288
- client.send(method, *args, command, &block)
288
+ client.public_send(method, *args, command, &block)
289
289
  end
290
290
 
291
291
  [results&.values, errors]
@@ -68,9 +68,9 @@ class RedisClient
68
68
  def try_send(node, method, command, args, retry_count: 3, &block) # rubocop:disable Metrics/AbcSize, Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
69
69
  if args.empty?
70
70
  # prevent memory allocation for variable-length args
71
- node.send(method, command, &block)
71
+ node.public_send(method, command, &block)
72
72
  else
73
- node.send(method, *args, command, &block)
73
+ node.public_send(method, *args, command, &block)
74
74
  end
75
75
  rescue ::RedisClient::CommandError => e
76
76
  raise if retry_count <= 0
@@ -101,7 +101,7 @@ class RedisClient
101
101
  end
102
102
 
103
103
  def try_delegate(node, method, *args, retry_count: 3, **kwargs, &block) # rubocop:disable Metrics/AbcSize
104
- node.send(method, *args, **kwargs, &block)
104
+ node.public_send(method, *args, **kwargs, &block)
105
105
  rescue ::RedisClient::CommandError => e
106
106
  raise if retry_count <= 0
107
107
 
@@ -214,7 +214,7 @@ class RedisClient
214
214
  case ::RedisClient::Cluster::NormalizedCmdName.instance.get_by_subcommand(command)
215
215
  when 'resetstat', 'rewrite', 'set'
216
216
  @node.call_all(method, command, args, &block).first
217
- else assign_node(command).send(method, *args, command, &block)
217
+ else assign_node(command).public_send(method, *args, command, &block)
218
218
  end
219
219
  end
220
220
 
@@ -222,7 +222,7 @@ class RedisClient
222
222
  case ::RedisClient::Cluster::NormalizedCmdName.instance.get_by_subcommand(command)
223
223
  when 'stats' then @node.call_all(method, command, args, &block)
224
224
  when 'purge' then @node.call_all(method, command, args, &block).first
225
- else assign_node(command).send(method, *args, command, &block)
225
+ else assign_node(command).public_send(method, *args, command, &block)
226
226
  end
227
227
  end
228
228
 
@@ -231,7 +231,7 @@ class RedisClient
231
231
  when 'list' then @node.call_all(method, command, args, &block).flatten
232
232
  when 'pause', 'reply', 'setname'
233
233
  @node.call_all(method, command, args, &block).first
234
- else assign_node(command).send(method, *args, command, &block)
234
+ else assign_node(command).public_send(method, *args, command, &block)
235
235
  end
236
236
  end
237
237
 
@@ -244,8 +244,8 @@ class RedisClient
244
244
  when 'getkeysinslot'
245
245
  raise ArgumentError, command.join(' ') if command.size != 4
246
246
 
247
- find_node(@node.find_node_key_of_replica(command[2])).send(method, *args, command, &block)
248
- else assign_node(command).send(method, *args, command, &block)
247
+ find_node(@node.find_node_key_of_replica(command[2])).public_send(method, *args, command, &block)
248
+ else assign_node(command).public_send(method, *args, command, &block)
249
249
  end
250
250
  end
251
251
 
@@ -255,7 +255,9 @@ class RedisClient
255
255
  @node.call_all(method, command, args, &block).first
256
256
  when 'flush', 'load'
257
257
  @node.call_primaries(method, command, args, &block).first
258
- else assign_node(command).send(method, *args, command, &block)
258
+ when 'exists'
259
+ @node.call_all(method, command, args, &block).transpose.map { |arr| arr.any?(&:zero?) ? 0 : 1 }
260
+ else assign_node(command).public_send(method, *args, command, &block)
259
261
  end
260
262
  end
261
263
 
@@ -266,7 +268,7 @@ class RedisClient
266
268
  @node.call_all(method, command, args, &block).reject(&:empty?).map { |e| Hash[*e] }
267
269
  .reduce({}) { |a, e| a.merge(e) { |_, v1, v2| v1 + v2 } }
268
270
  when 'numpat' then @node.call_all(method, command, args, &block).select { |e| e.is_a?(Integer) }.sum
269
- else assign_node(command).send(method, *args, command, &block)
271
+ else assign_node(command).public_send(method, *args, command, &block)
270
272
  end
271
273
  end
272
274
 
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redis-cluster-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.14
4
+ version: 0.3.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - Taishi Kasuga
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-13 00:00:00.000000000 Z
11
+ date: 2022-12-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: redis-client
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.10'
19
+ version: '0.11'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.10'
26
+ version: '0.11'
27
27
  description:
28
28
  email:
29
29
  - proxy0721@gmail.com
@@ -69,7 +69,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
69
69
  - !ruby/object:Gem::Version
70
70
  version: '0'
71
71
  requirements: []
72
- rubygems_version: 3.3.22
72
+ rubygems_version: 3.3.23
73
73
  signing_key:
74
74
  specification_version: 4
75
75
  summary: A Redis cluster client for Ruby