-
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: enable cpu balancing by default #97424
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
It looks like your PR touches production code but doesn't add or edit any test code. Did you consider adding tests to your PR? 🦉 Hoot! I am a Blathers, a bot for CockroachDB. My owner is dev-inf. |
kvoli
force-pushed
the
230221.enable-cpu-balancing
branch
from
February 21, 2023 22:47
8f23d19
to
c8a8b91
Compare
This commit switches the default load based rebalancing objective from `qps` to `cpu`. A performance comparison can be found on cockroachdb#90590. resolves: cockroachdb#90582 Release note (ops change): CPU balancing is enabled as the default load based rebalancing objective. This can be reverted by setting `kv.allocator.load_based_rebalancing.objective` to `qps`.
kvoli
force-pushed
the
230221.enable-cpu-balancing
branch
from
February 21, 2023 22:55
c8a8b91
to
8b202b9
Compare
nvanbenschoten
approved these changes
Feb 22, 2023
bors r=nvanbenschoten |
Build succeeded: |
This was referenced Feb 22, 2023
kvoli
added a commit
to kvoli/cockroach
that referenced
this pull request
Feb 23, 2023
This commit updates the clusters used in `splits/load` roachtests to use QPS load based splitting, rather than CPU, which was enabled by default in cockroachdb#97424. These tests were failing as they assumed QPS load based splitting when calculating the number of final ranges to assert against. These tests should be run against all load based split objectives, this is tracked in cockroachdb#97540. Resolves: cockroachdb#97494 Resolves: cockroachdb#97455 Informs: cockroachdb#97540 Release note: None
craig bot
pushed a commit
that referenced
this pull request
Feb 23, 2023
97542: roachtest: use qps splitting for splits/load tests r=shralex a=kvoli This commit updates the clusters used in `splits/load` roachtests to use QPS load based splitting, rather than CPU, which was enabled by default in #97424. These tests were failing as they assumed QPS load based splitting when calculating the number of final ranges to assert against. These tests should be run against all load based split objectives, this is tracked in #97540. Resolves: #97494 Resolves: #97455 Informs: #97540 Co-authored-by: Austen McClernon <[email protected]>
kvoli
added a commit
to kvoli/cockroach
that referenced
this pull request
Mar 27, 2023
We introduced CPU balancing by default in cockroachdb#97424. This had the side effect of changing the hot ranges api to return the hottest replicas by CPU, rather than QPS. This patch updates the replica rankings struct to support tracking both by CPU and QPS simultaneously. The hot ranges API collects the top k by QPS and the store rebalancer collects depending on the setting of `kv.allocator.load_based_rebalancing.objective`, which is by default `cpu`. Resolves: cockroachdb#99605 Release note (bug fix): The hot ranges UI page would show hot ranges by CPU and not QPS, depending on the value of `kv.allocator.load_based_rebalancing.objective` (default `cpu`). Now the UI page will always collect based on QPS.
kvoli
added a commit
to kvoli/cockroach
that referenced
this pull request
Mar 28, 2023
We introduced CPU balancing by default in cockroachdb#97424. This had the side effect of changing the hot ranges api to return the hottest replicas by CPU, rather than QPS. This patch updates the replica rankings struct to support tracking both by CPU and QPS simultaneously. The hot ranges API collects the top k by QPS and the store rebalancer collects depending on the setting of `kv.allocator.load_based_rebalancing.objective`, which is by default `cpu`. Resolves: cockroachdb#99605 Release note (bug fix): The hot ranges UI page would show hot ranges by CPU and not QPS, depending on the value of `kv.allocator.load_based_rebalancing.objective` (default `cpu`). Now the UI page will always collect based on QPS.
kvoli
added a commit
to kvoli/cockroach
that referenced
this pull request
Mar 30, 2023
We introduced CPU balancing by default in cockroachdb#97424. This had the side effect of changing the hot ranges api to return the hottest replicas by CPU, rather than QPS. This patch updates the replica rankings struct to support tracking both by CPU and QPS simultaneously. The hot ranges API collects the top k by QPS and the store rebalancer collects depending on the setting of `kv.allocator.load_based_rebalancing.objective`, which is by default `cpu`. Resolves: cockroachdb#99605 Release note (bug fix): The hot ranges UI page would show hot ranges by CPU and not QPS, depending on the value of `kv.allocator.load_based_rebalancing.objective` (default `cpu`). Now the UI page will always collect based on QPS.
craig bot
pushed a commit
that referenced
this pull request
Mar 30, 2023
99669: roachtest: bump jepsen version r=smg260 a=renatolabs This commit bumps the jepsen version now to include a fix that allows jepsen to set custom range sizes. See: cockroachdb/jepsen#34 Epic: none Release note: None 99716: kvserver: use qps for hot ranges sorting r=koorosh a=kvoli We introduced CPU balancing by default in #97424. This had the side effect of changing the hot ranges api to return the hottest replicas by CPU, rather than QPS. This patch updates the replica rankings struct to support tracking both by CPU and QPS simultaneously. The hot ranges API collects the top k by QPS and the store rebalancer collects depending on the setting of `kv.allocator.load_based_rebalancing.objective`, which is by default `cpu`. Resolves: #99605 Co-authored-by: Renato Costa <[email protected]> Co-authored-by: Austen McClernon <[email protected]>
blathers-crl bot
pushed a commit
that referenced
this pull request
Mar 30, 2023
We introduced CPU balancing by default in #97424. This had the side effect of changing the hot ranges api to return the hottest replicas by CPU, rather than QPS. This patch updates the replica rankings struct to support tracking both by CPU and QPS simultaneously. The hot ranges API collects the top k by QPS and the store rebalancer collects depending on the setting of `kv.allocator.load_based_rebalancing.objective`, which is by default `cpu`. Resolves: #99605 Release note (bug fix): The hot ranges UI page would show hot ranges by CPU and not QPS, depending on the value of `kv.allocator.load_based_rebalancing.objective` (default `cpu`). Now the UI page will always collect based on QPS.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This commit switches the default load based rebalancing objective from
qps
tocpu
. A performance comparison can be found on #90590.resolves: #90582
Release note (ops change): CPU balancing is enabled as the default load based rebalancing objective. This can be reverted by setting
kv.allocator.load_based_rebalancing.objective
toqps
.