fix: don't error on static assignment if rebalancing should take place#29
Merged
fix: don't error on static assignment if rebalancing should take place#29
Conversation
bmckerry
commented
May 1, 2025
bmckerry
commented
May 1, 2025
Comment on lines
+72
to
+75
| // satify the placement config | ||
| if f.placementConfig.Strategy == config.PlacementStrategyStatic { | ||
| log.Info("Current partition assignment does not match static assignment, rebalancing will take place") | ||
| } else { |
Member
Author
There was a problem hiding this comment.
When applying a new topic, if EvaluateAssignments returns false, topicctl knows it needs to adjust the partition placement of the new topic to match the desired placement strategy: https://github.com/getsentry/topicctl/blob/master/pkg/apply/apply.go#L831
When rebalancing a topic (which is what this frequency.go file is used for), if EvaluateAssignments returns false, topicctl considers that to be an error. I've updated it so that if we're using static placement, topicctl doesn't error out here when rebalancing.
This reverts commit 4020cb9.
This file contains hidden or 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
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.
To horizontally scale the US transactions cluster, we're trying to give topicctl specific assignments for topics in the cluster via
staticplacement (see docs).Currently, running a
topicctl apply --rebalanceon a topic withstaticreplica assignments is getting this error:If I'm understanding the code correctly, the current implementation of
Rebalance()usingPlacementStrategyStaticmakes it so that a rebalance will never happen, as it throws an error if the current replica assignments don't match the static assignments being specified.I'm not sure what the purpose of this is, so this PR changes the case where current placement != desired static placement to just log something instead of erroring. More details below.