A pricing service replicates state across exactly two datacentres. A link failure isolates them while both keep serving clients. State what CAP forces you to choose, what each choice does to a quoting engine reading that state, and why a majority quorum design cannot make the choice for you here.

A pricing service replicates state across exactly two datacentres. A link failure isolates them while both keep serving clients. State what CAP forces you to choose, what each choice does to a quoting engine reading that state, and why a majority quorum design cannot make the choice for you here.

Approach: Fix what the partition removes, then work out what each side can still promise a reader and what it must refuse, and count how many sites are needed for a majority to exist at all.

The partition is given, so the choice is between availability and consistency: either both sites keep serving and diverge, or one side stops serving and the other stays correct. Choosing availability means each datacentre accepts writes it cannot replicate, so each quoting engine prices from a state the other does not hold, both can quote against the same risk limit, and the merge on reconnection is a decision no automatic rule settles correctly. Choosing consistency means the minority side refuses reads and writes, so its quoting engine has no state and stops quoting, which is a controlled outage rather than a silent inconsistency. With exactly two datacentres there is no majority to be had, so a quorum design cannot decide symmetrically; three sites, or two sites plus a witness, give one side a majority and make the decision automatic and identical on both sides, which is the property that matters, since the failure to avoid is each side independently concluding that it is the survivor. For a quoting engine the consistent choice is right, because a stopped quote costs spread and a doubled position costs the position.

Follow-up: How do you let the stopped side resume automatically without a human confirming the link is genuinely back?

Key concepts: partition tolerance, availability, consistency, minority side.