Definition · Common-cause failureA common cause is an event that takes more than one component at once: a power feed, a rack, a network partition, an expired certificate, a configuration push, a deploy. Writing c for the probability that such an event occurs in the period and p for each component's own independent failure probability, a pair is down together with probability c + (1 − c)p². c is a probability in [0, 1] and never a count of machines.
At c = 0 this is exactly independence and the pair is p², which is the parallel formula of two lessons ago. The model does not replace the earlier one; it contains it, and the earlier one is the special case where a claim that was never checked happens to be true.
p = 1/100, p² = 1/10 000 = 0.0001
c = 0 P(both down) = 0.00010000 pair 99.99000% 4 nines
c = 1/100 000 P(both down) = 0.00011000 pair 99.98900% 3 nines
c = 1/10 000 P(both down) = 0.00019999 pair 99.98000% 3 nines
c = 1/1000 P(both down) = 0.00109990 pair 99.89001% 2 nines
c = 1/100 P(both down) = 0.01009900 pair 98.99010% 1 nine
at c = p² exactly, P(both down) is 2.00 × the independent value
Read the middle row first. When c equals p² the correlated answer is exactly twice the independent one, which gives a usable rule of thumb: the independent model is trustworthy only while the shared causes are much rarer than the product of the individual failures. For a pair of four-nines machines that product is 10⁻⁸, and very little in a data centre is rarer than that.
Where the second machine stops earning its place
Theorem · The break-even common causeA pair is exactly as available as one machine when c = p/(1 + p).
The pair is no better than a single machine when c + (1 − c)p² = p.
Rearranging: c − cp² = p − p², so c(1 − p²) = p(1 − p).
Factor 1 − p² = (1 − p)(1 + p) and divide by 1 − p, which is positive for p < 1: c(1 + p) = p, hence c = p/(1 + p).
At p = 1/100 this is 1/101 ≈ 0.009901. Above that value the second machine is worse than useless: it adds cost, complexity and a failover path while lowering availability.
□
How to report a number whose assumption you doubt
You will rarely know c. What you can do is bracket it: compute the independent figure, compute the figure at a c you would not be surprised by, and report both with the gap between them named. A single number computed under an unstated assumption is the failure mode this lesson exists to prevent, and it is not fixed by choosing a more conservative single number.
Example · The same pair, reported two ways“Two 99% machines give 99.99%” is the independent answer. “Two 99% machines give 99.99% if they fail independently, and 99.89% if one event in a thousand takes both — they are in the same rack, so the second figure is the one to plan against” is the same arithmetic and a different claim. The second sentence is what the lab is for: move c up from zero and the red curve leaves the dashed line immediately.
The practical follow-up is that c is the quantity to attack. Splitting replicas across racks, power feeds, availability zones, deploy waves and certificate authorities are all attempts to lower c, and each of them is worth more than another replica once c is above p². The lab makes that comparison directly: a replica multiplies p² by p, and it does not touch c at all.
Example · Where correlation actually comes fromThe shared deploy is the one that catches teams with genuinely independent hardware: five replicas in five racks across three zones, all receiving the same bad configuration within ninety seconds. For that failure the fleet is one machine, c is the probability of shipping a bad change, and no amount of n in the previous lesson's binomial changes the answer. Staged rollouts are an attempt to make c smaller by making the deploy not simultaneous.