-
Notifications
You must be signed in to change notification settings - Fork 3.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
kvserver: gossip store read amplification #77040
Conversation
7683898
to
1008d5c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reviewable status: complete! 1 of 0 LGTMs obtained (waiting on @kvoli)
pkg/roachpb/metadata.proto, line 334 at r1 (raw file):
optional double writes_per_second = 5 [(gogoproto.nullable) = false]; // read_amplification tracks the current read amplification in the store. optional int64 read_amplification = 11 [(gogoproto.nullable) = false];
We should add a TODO
here or somewhere else that mentions that the use of this field will need to be version-gated.
Thanks for the review.
That sounds like a good idea. What would be the process here with mixed versions clusters? Does version gating ensure no overlapping of mismatched versions occurs? |
When we extend the allocator logic to use this new attribute, it will need to ensure that the current cluster version is one that supports this new cockroach/pkg/kv/kvserver/replicate_queue.go Lines 554 to 555 in 208e2b4
If this check fails, that means we're in a mixed version state and we can't use this new attribute. |
1008d5c
to
1bda46e
Compare
bors r+ |
Build failed: |
Previously, other store statistics were gossipped between stores to inform allocation and rebalancing decisions. This patch introduces an additional gosipped value, the store read amplification. This patch allows the allocator to avoid rebalancing ranges onto stores with poor lsm health, indicated by a large read amplification. resolves cockroachdb#74254 Release note: None
1bda46e
to
ffdc631
Compare
bors r- |
Rebased on master, going to re-run the CI here. |
bors r+ |
Build succeeded: |
Previously, other store statistics were gossipped between stores to
inform allocation and rebalancing decisions. This patch introduces an
additional gosipped value, the store read amplification. This patch
allows the allocator to avoid rebalancing ranges onto stores with poor
lsm health, indicated by a large read amplification.
resolves #74254
Release note: None