miroir/crates
jedarden 17f13e0460 feat(rebalancer): implement RF-restore for node recovery (P4.5)
Implements plan §2 unplanned node failure RF-restore flow:
- When a node recovers after failure, schedule background replication
- For each shard the recovered node should own, find healthy source replica
- Create migration job to copy data from surviving replica to recovered node
- Dual-write starts immediately so writes go to both source and recovered node

Key changes:
- Enhanced `on_node_recovered` to trigger RF-restore migrations
- Added `compute_shard_sources_for_rf_restore` to find healthy intra-group sources
- Reuses existing migration infrastructure for consistency with node addition

Cross-group fallback was already implemented in scatter.rs for RF=1 groups.

Closes: miroir-mkk.5
2026-05-24 19:18:05 -04:00
..
miroir-core feat(rebalancer): implement RF-restore for node recovery (P4.5) 2026-05-24 19:18:05 -04:00
miroir-ctl feat(reshard): implement full six-phase orchestrator with admin API integration 2026-05-24 18:59:36 -04:00
miroir-proxy feat(reshard): implement full six-phase orchestrator with admin API integration 2026-05-24 18:59:36 -04:00