- Convert anonymous interface dependency in BootstrapManager to the new EntryApplier interface
- Update service layer code to use interfaces instead of concrete types
- Fix tests to properly verify bootstrap behavior
- Extend test coverage with proper root cause analysis for failing tests
- Fix persistence tests in replica_registration to explicitly handle delayed persistence
- Add access control system for replica authorization
- Implement persistence of replica information
- Add stale replica detection
- Create comprehensive tests for replica registration
- Update ReplicationServiceServer to use new components
- Add checksums for WAL entries and WAL entry batches
- Implement robust retry and circuit breaker patterns for reliability
- Add comprehensive tests for message processing and reliability features
- Enhance error handling and timeout management
This commit adds comprehensive reliability features to the replication transport layer:
- Add retry logic with exponential backoff for all network operations
- Implement circuit breaker pattern to prevent cascading failures
- Add reconnection handling with automatic recovery
- Implement proper timeout handling for all network operations
- Add comprehensive logging for connection issues
- Improve error handling with temporary error classification
- Enhance stream processing with automatic recovery
This commit implements the replication transport layer as part of Phase 2 of the replication plan.
Key components include:
- Add protocol buffer definitions for replication services
- Implement WALReplicator extension for processor management
- Create replication service server implementation
- Add replication client and server transport implementations
- Implement storage snapshot interface for bootstrap operations
- Standardize package naming across replication components