Skip to content

Commit bd6ee65

Browse files
authored
Merge pull request #882 from haruwo/retry-once-to-many-on-moved-error-by-cluster
Retry once to many on `MOVED` error at cluster
2 parents c7b69ba + 1f59ca1 commit bd6ee65

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

lib/redis/cluster.rb

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -216,7 +216,10 @@ def try_send(node, method_name, *args, retry_count: 3, &block)
216216
node.public_send(method_name, *args, &block)
217217
rescue CommandError => err
218218
if err.message.start_with?('MOVED')
219-
assign_redirection_node(err.message).public_send(method_name, *args, &block)
219+
raise if retry_count <= 0
220+
node = assign_redirection_node(err.message)
221+
retry_count -= 1
222+
retry
220223
elsif err.message.start_with?('ASK')
221224
raise if retry_count <= 0
222225
node = assign_asking_node(err.message)

0 commit comments

Comments
 (0)