linkedin / ambry

Distributed object store
https://github.com/linkedin/ambry/wiki
Apache License 2.0
1.74k stars 275 forks source link

[WIP] Paranoid durability changes - not to be merged yet #2792

Closed litingulfs closed 2 months ago

justinlin-linkedin commented 3 months ago

I think we don't want to differentiate different remote colos. We only care about the success in local replicas and one remote replicas. For that, we can create two different set of replicas, one for local replicas, one for remote.

So the map replicaByDc can have two keys, "LOCAL" and "REMOTE", or just "true" or "false" to indicate if it's local or remote.

For the remote replicas, we also want to make sure that we get leaders and standbys, so we still need to call getEligibleReplicas to get the leader and standby replicas from the remote.