fdbdr should restore lost replicas with data from the primary
- Dominant language
- C++
- Stars
- 16.7k
- Forks
- 1.6k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 126
Description
It is often desirable to have a DR with a lower replication factor than the primary. In this configuration, we would like for the DR to automatically heal using data from the primary in the event that all storage servers with a range of keys die simultaneously.
Proposed design:
* Mark the DR status as incomplete
* Replace the dead ranges with empty ranges on different storage servers
* Add DR tasks to copy the data for the dead ranges from the primary
* Let the DR complete as normal
Contributor guide
Research direction
Start by tracing the fdbdr disaster-recovery workflow and how it handles ranges that are unavailable on the primary. Compare that flow with the proposed incomplete status, replacement empty ranges, and data-copy tasks. Done means a DR with a lower replication factor can restore ranges from the primary and complete normally after simultaneous storage-server loss.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- databases, distributed-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100