Skip to content

feat(options): add DialerRetries and DialerRetryTimeout to ClusterOpions, RingOptions, and FailoverOptions#3686

Merged
ndyakov merged 2 commits intoredis:masterfrom
naveenchander30:add-dialer-options-to-cluster-ring-sentinel
Jan 24, 2026
Merged

feat(options): add DialerRetries and DialerRetryTimeout to ClusterOpions, RingOptions, and FailoverOptions#3686
ndyakov merged 2 commits intoredis:masterfrom
naveenchander30:add-dialer-options-to-cluster-ring-sentinel

Conversation

@naveenchander30
Copy link
Contributor

Add DialerRetries and DialerRetryTimeout fields to ClusterOptions, RingOptions, and FailoverOptions to allow users to configure connection retry behavior for cluster, ring, and sentinel clients.

These options were previously only available for the standard Client and were added to connection pools in #3518. This change ensures feature parity across all client types.

Changes:

  • Add DialerRetries and DialerRetryTimeout fields to ClusterOptions
  • Add DialerRetries and DialerRetryTimeout fields to RingOptions
  • Add DialerRetries and DialerRetryTimeout fields to FailoverOptions
  • Update clientOptions() methods to pass through these values
  • Update sentinelOptions() method to pass through these values
  • Add tests to verify correct pass-through behavior

Fixes issue where ClusterClient, Ring, and FailoverClient users could not customize connection retry behavior and were stuck with defaults (5 retries, 100ms backoff).

…ions, RingOptions, and FailoverOptions

Add DialerRetries and DialerRetryTimeout fields to ClusterOptions, RingOptions,
and FailoverOptions to allow users to configure connection retry behavior for
cluster, ring, and sentinel clients.

These options were previously only available for the standard Client and were
added to connection pools in redis#3518. This change ensures feature parity across
all client types.

Changes:
- Add DialerRetries and DialerRetryTimeout fields to ClusterOptions
- Add DialerRetries and DialerRetryTimeout fields to RingOptions
- Add DialerRetries and DialerRetryTimeout fields to FailoverOptions
- Update clientOptions() methods to pass through these values
- Update sentinelOptions() method to pass through these values
- Add tests to verify correct pass-through behavior

Fixes issue where ClusterClient, Ring, and FailoverClient users could not
customize connection retry behavior and were stuck with defaults (5 retries,
100ms backoff).
@jit-ci
Copy link

jit-ci bot commented Jan 21, 2026

Hi, I’m Jit, a friendly security platform designed to help developers build secure applications from day zero with an MVS (Minimal viable security) mindset.

In case there are security findings, they will be communicated to you as a comment inside the PR.

Hope you’ll enjoy using Jit.

Questions? Comments? Want to learn more? Get in touch with us.

@ndyakov
Copy link
Member

ndyakov commented Jan 21, 2026

@naveenchander30 thank you for this contribution! Looks good on a first quick pass, will do a final review over the weekend.

Copy link
Member

@ndyakov ndyakov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, thanks once again.

@ndyakov ndyakov merged commit cff9459 into redis:master Jan 24, 2026
31 checks passed
ndyakov added a commit that referenced this pull request Jan 24, 2026
…ions, RingOptions, and FailoverOptions (#3686)

Add DialerRetries and DialerRetryTimeout fields to ClusterOptions, RingOptions,
and FailoverOptions to allow users to configure connection retry behavior for
cluster, ring, and sentinel clients.

These options were previously only available for the standard Client and were
added to connection pools in #3518. This change ensures feature parity across
all client types.

Changes:
- Add DialerRetries and DialerRetryTimeout fields to ClusterOptions
- Add DialerRetries and DialerRetryTimeout fields to RingOptions
- Add DialerRetries and DialerRetryTimeout fields to FailoverOptions
- Update clientOptions() methods to pass through these values
- Update sentinelOptions() method to pass through these values
- Add tests to verify correct pass-through behavior

Fixes issue where ClusterClient, Ring, and FailoverClient users could not
customize connection retry behavior and were stuck with defaults (5 retries,
100ms backoff).

Co-authored-by: Nedyalko Dyakov <1547186+ndyakov@users.noreply.github.com>
ndyakov added a commit that referenced this pull request Jan 24, 2026
…ions, RingOptions, and FailoverOptions (#3686)

Add DialerRetries and DialerRetryTimeout fields to ClusterOptions, RingOptions,
and FailoverOptions to allow users to configure connection retry behavior for
cluster, ring, and sentinel clients.

These options were previously only available for the standard Client and were
added to connection pools in #3518. This change ensures feature parity across
all client types.

Changes:
- Add DialerRetries and DialerRetryTimeout fields to ClusterOptions
- Add DialerRetries and DialerRetryTimeout fields to RingOptions
- Add DialerRetries and DialerRetryTimeout fields to FailoverOptions
- Update clientOptions() methods to pass through these values
- Update sentinelOptions() method to pass through these values
- Add tests to verify correct pass-through behavior

Fixes issue where ClusterClient, Ring, and FailoverClient users could not
customize connection retry behavior and were stuck with defaults (5 retries,
100ms backoff).

Co-authored-by: Nedyalko Dyakov <1547186+ndyakov@users.noreply.github.com>
@iwpnd
Copy link

iwpnd commented Feb 4, 2026

Hey 👋 Is there a reason this is not extended to the UniversalOptions of the UniversalClient? @ndyakov

@ndyakov
Copy link
Member

ndyakov commented Feb 4, 2026

@iwpnd it is done in a separate PR. Will report next week on that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants