refactor: remove redis sentinel support and simplify redis connection handling#178
Merged
refactor: remove redis sentinel support and simplify redis connection handling#178
Conversation
…ry logic **Added:** - Added a new manual multi-forest end-to-end test guide (`MANUAL-ESSOS.md`) under `docs/testing` to document required manual steps for multi-domain operation validation **Changed:** - Updated Redis connection logic to use direct Redis URL and standard connection parameters only - Simplified health check, reconnection, and error recovery flows to remove Sentinel references, focusing on pod restart resilience - Refactored comments, docstrings, and log messages to remove mentions of Sentinel and clarify connection error handling - Adjusted tests to remove expectations for Sentinel logic, including patches, mocks, and error messages related to Sentinel - Updated documentation and code comments to reflect removal of Sentinel and clarify Redis connection strategy **Removed:** - Eliminated all Redis Sentinel-specific connection logic, including detection, DNS resolution, and failover handling from the codebase - Removed `invalidate_sentinel_client`, Sentinel configuration, and all references in `ares.core.redis_client` and related modules - Deleted Sentinel-specific error handling, retry, and reconnection code in task queues, orchestrators, and dispatcher monitoring - Removed Sentinel role verification and replica client creation logic
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Key Changes:
Added:
Manual test guide for multi-forest end-to-end operations (unrelated to
Sentinel removal, but included in this change for completeness) -
docs/testing/MANUAL-ESSOS.mddocuments manual steps for multi-domain attackchains
New manual test guide for multi-forest/Essos compromise workflow, including
all operational steps, troubleshooting, and known issues
Changed:
Redis client creation helpers (
create_redis_client,create_verified_redis_client)now use only direct Redis URL connections with optional single-connection mode
All references to "Sentinel" failover, stale connections, or master discovery
replaced with generic Redis connection handling and pod restart recovery
Logging, comments, and error messages updated to no longer mention Sentinel
Task queue, orchestrator, and dispatcher logic refactored to remove
Sentinel-specific reconnection and state reset paths
Documentation (
codemap.md, inline code docs) updated to reflect removalof Sentinel features and clarify direct Redis usage
All Redis-related health check, retry, and reconnection logic now targets
direct connections, not Sentinel pools or master/replica roles
Tests updated to remove patching and assertions related to
invalidate_sentinel_clientand Sentinel failover scenariosEnv var documentation and code references updated to reflect direct Redis use
Removed:
invalidate_sentinel_clientfunction and calls throughout codebasetask queues, dispatcher monitoring, and recovery modules