Skip to content

fix(sentinel): preserve root seeds for outage recovery#3188

Open
nkaradzhov wants to merge 1 commit intoredis:masterfrom
nkaradzhov:3127
Open

fix(sentinel): preserve root seeds for outage recovery#3188
nkaradzhov wants to merge 1 commit intoredis:masterfrom
nkaradzhov:3127

Conversation

@nkaradzhov
Copy link
Collaborator

@nkaradzhov nkaradzhov commented Feb 27, 2026

fixes #3127

Description

Describe your pull request here


Checklist

  • Does npm test pass with this change (including linting)?
  • Is the new or changed code fully tested?
  • Is a documentation update included (if this change modifies existing APIs, or introduces new ones)?

Note

Medium Risk
Changes sentinel failover/rediscovery behavior during disconnects by repopulating #sentinelRootNodes from stored seed nodes, which could affect reconnection loops and topology updates under real outages. Added coverage reduces risk but behavior is timing-sensitive and exercised during network partitions.

Overview
Improves Sentinel outage recovery by persisting the initially configured sentinel endpoints (#sentinelSeedNodes) and restoring #sentinelRootNodes from those seeds whenever failures remove all known roots (also enforced at the start of observe()).

Makes sentinel list change detection compare the actual node sets (via a stable host/port key) instead of just list length, and adds an integration test that simulates a full Redis+Sentinel outage and asserts periodic commands recover after restart.

Written by Cursor Bugbot for commit d8421b0. This will update automatically on new commits. Configure here.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Redis Sentinel client doesn't reconnect after connection failure

1 participant