Support for maintenance push notifications handling during server upgrade or maintenance procedures. by petyaslavova · Pull Request #3756 · redis/redis-py (original) (raw)
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds support for maintenance push notifications handling during server upgrade or maintenance procedures. It introduces a comprehensive maintenance events system that allows Redis clients to gracefully handle node movements, migrations, and failovers in Redis clusters by adjusting connection timeouts and implementing proactive reconnection strategies.
Key changes include:
- Addition of new maintenance event classes and configuration system
- Integration of maintenance event handlers into connection pools and clients
- Support for RESP3 push notifications for maintenance events
- Enhanced connection pool management with maintenance-aware operations
Reviewed Changes
Copilot reviewed 8 out of 9 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| redis/maintenance_events.py | Core maintenance events system with event classes, configuration, and handlers |
| redis/connection.py | Enhanced connection interface and pool management with maintenance event support |
| redis/client.py | Client-level integration of maintenance events configuration |
| redis/_parsers/base.py | Push notification parsing for maintenance events |
| redis/_parsers/resp3.py | RESP3 parser updates for maintenance notifications |
| redis/_parsers/hiredis.py | Hiredis parser updates for push notification handling |
| tests/test_maintenance_events.py | Comprehensive test suite for maintenance events functionality |
| tests/test_connection_pool.py | Minor test updates for connection pool changes |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.