kvserver: inconsistent span configs between outgoing and incoming leaseholders causes temporary violations #103086
Labels
A-kv-distribution
Relating to rebalancing and leasing.
C-bug
Code not up to spec/doc, specs & docs deemed correct. Solution expected to change code/behavior.
T-kv
KV Team
We don't have causal consistency guarantees that if a previous leaseholder sees an updated span config (v2) that the new leaseholder for the range will also only see => v2.
The period of time where this state occurs is usually short, however still long enough to remove several replicas from a range if the old configuration had a lower RF or different constraints.
The impact is potential (temporary) underreplication and constraint violation. This also results in redundant work, as the new leaseholder has to undo its replication activity from the period where it uses a stale span config, once it receives the updated span config.
Repro can be found by checking #101519 comment thread.
Jira issue: CRDB-27826
The text was updated successfully, but these errors were encountered: