mon-04recorded its observation in termt-43.- The observation made in term
t-43carried three votes. - Term
t-42carries two votes. n-gammawas recorded with two votes.n-delta’s claim carried a single vote.mon-03recorded a single-vote claim.- The term
t-44observation did not carry a single vote. mon-01did not record termt-44.n-betawas not the node that reached four votes.- The rejoin trace lists five readers. The cluster has four monitors.
08 / both of them
The partition lasted forty seconds. The argument lasted the rest of the day.
[ALERT] INC-0008 — Control plane partition, 40s
[ALERT] Two nodes accepted writes as primary
[CRITC] Divergent term history after rejoin
[INFO ] cluster size 7 · quorum 4
[INFO ] monitors reporting: 4/4
[WARN ] monitors agreeing: 0/4
Four monitors. Four different leaders. None of them wrong, exactly — each one had watched an election, counted the votes it could see, and written down the winner. Then the link came back and all four records landed in the same trace.
“Everyone’s telling the truth,” Andy said.
“Everyone always is.” Bob had his headphones around his neck, which meant he had been listening to the incident channel for a while before saying anything. “A partition doesn’t make anybody lie. It makes them all correct about a smaller world.”
He pointed at the header.
“Seven nodes, quorum of four. So out of those four claims, exactly one ever had the cluster behind it. The rest are three people winning elections in rooms with nobody in them.”
Both primaries accepted writes. We are going to be reconciling ledgers until Thursday.
Treating as possible intrusion until proven otherwise.
It's a partition. Forty seconds of nobody being able to hear each other. Security can have it back when they find a packet that didn't belong.
Four categories now. Columns are monitors, nodes, terms. Rows are votes, terms, nodes. One node, one term and one vote count per monitor.
Find the claim that actually made quorum. Format: node, monitor, term, votes.
fault
Two primaries after partition
cluster
7 nodes · quorum 4
severity
SEV-1
| mon-01 | mon-02 | mon-03 | mon-04 | n-alpha | n-beta | n-gamma | n-delta | t-41 | t-42 | t-43 | t-44 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| v=1 | ||||||||||||
| v=2 | ||||||||||||
| v=3 | ||||||||||||
| v=4 | ||||||||||||
| t-41 | ||||||||||||
| t-42 | ||||||||||||
| t-43 | ||||||||||||
| t-44 | ||||||||||||
| n-alpha | ||||||||||||
| n-beta | ||||||||||||
| n-gamma | ||||||||||||
| n-delta |
Question: Which node actually held the lease — recorded by which monitor, in which term, with how many votes?