File tree Expand file tree Collapse file tree 1 file changed +18
-20
lines changed Expand file tree Collapse file tree 1 file changed +18
-20
lines changed Original file line number Diff line number Diff line change @@ -461,9 +461,7 @@ def _parse_driver(driver)
461
461
end
462
462
463
463
class Connector
464
- attr_reader :logger
465
464
def initialize ( options )
466
- @logger = options [ :logger ]
467
465
@options = options
468
466
end
469
467
@@ -514,28 +512,28 @@ def resolve
514
512
end
515
513
516
514
def sentinel_detect
517
- @sentinels . each do |sentinel |
518
- client = Client . new ( :host => sentinel [ :host ] , :port => sentinel [ :port ] , :timeout => 0.3 )
519
-
520
- begin
521
- if result = yield ( client )
522
- # This sentinel responded. Make sure we ask it first next time.
523
- @sentinels . delete ( sentinel )
524
- @sentinels . unshift ( sentinel )
525
-
526
- return result
515
+ 3 . times do
516
+ @sentinels . each do |sentinel |
517
+ client = Client . new ( :host => sentinel [ :host ] , :port => sentinel [ :port ] , :timeout => 0.3 )
518
+
519
+ begin
520
+ if result = yield ( client )
521
+ # This sentinel responded. Make sure we ask it first next time.
522
+ @sentinels . delete ( sentinel )
523
+ @sentinels . unshift ( sentinel )
524
+
525
+ return result
526
+ end
527
+ rescue CannotConnectError
528
+ ensure
529
+ client . disconnect
527
530
end
528
- rescue CannotConnectError
529
- if logger
530
- msg = "[Redis] Could not connect to sentinel #{ sentinel [ :host ] } :#{ sentinel [ :port ] } "
531
- logger . debug ( msg )
532
- end
533
- ensure
534
- client . disconnect
535
531
end
532
+
533
+ sleep ( 0.3 )
536
534
end
537
535
538
- return nil
536
+ raise CannotConnectError , "No sentinels available."
539
537
end
540
538
541
539
def resolve_master
You can’t perform that action at this time.
0 commit comments