kvserver: timestamp and invalidate storepool estimates #93532
Labels
A-kv
Anything in KV that doesn't belong in a more specific category.
C-enhancement
Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception)
T-kv
KV Team
Is your feature request related to a problem? Please describe.
The storepool for each store locally tracks every store's capacity (qps, lease count etc). This capacity is gathered from gossip and used in allocation. When an allocation change occurs, which originates locally, the local store will update the storepool with an estimate of the impact. This is done to allow the local store to continue to make allocation decisions that take into account the recent change.
These local estimates are overridden by gossip, each time a new descriptor is received.
This leads to an issue where an action could take place at
t2
, while the capacity of a store involved in that action could be sent att1
and received by another store that originated this action att3
. Here, the local update is overridden by the gossip update att1
.The solution is to include time in both local estimate application and when gossip updates are received.
More specifically,
Jira issue: CRDB-22382
The text was updated successfully, but these errors were encountered: