-
Notifications
You must be signed in to change notification settings - Fork 458
[server] Support generate and execute reblance plan #1452
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
base: main
Are you sure you want to change the base?
Conversation
061ed6b to
6bf4aca
Compare
6bf4aca to
d67fc39
Compare
d88c76c to
434a4f4
Compare
d67fc39 to
780e238
Compare
967ccb0 to
85341ca
Compare
| message ListRebalanceProcessResponse { | ||
| repeated PbRebalanceProcessForTable process_for_table = 1; | ||
| } |
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.
I have a question here. Rebalance task are store in CoordinatorContext via Map<TableBucket, RebalanceResultForBucket>, and Admin#listRebalanceProcess alse return Map<TableBucket, RebalanceResultForBucket>. So can we directly use the following format?
message ListRebalanceProcessResponse {
repeated PbRebalanceProcessForBucket process_for_bucket = 1;
}
message PbRebalanceProcessForBucket {
required int64 table_id = 1;
required int64 partition_id = 2;
required int32 bucket_id = 3;
repeated int32 original_replicas = 4 [packed = true];
repeated int32 new_replicas = 5 [packed = true];
required int32 rebalance_status = 6;
}60fd7ef to
ed3a37a
Compare
| @Override | ||
| public CompletableFuture<RebalanceResponse> rebalance(RebalanceRequest request) { | ||
| throw new UnsupportedOperationException("Support soon!"); | ||
| List<Goal> goalsByPriority = new ArrayList<>(); |
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.
Missing permission control?
| public CompletableFuture<CancelRebalanceResponse> cancelRebalance( | ||
| CancelRebalanceRequest request) { | ||
| throw new UnsupportedOperationException("Support soon!"); | ||
| rebalanceManagerSupplier.get().cancelRebalance(); |
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.
ditto
| return new LeaderAndIsr(leader, leaderEpoch, newIsr, coordinatorEpoch, bucketEpoch + 1); | ||
| } | ||
|
|
||
| public LeaderAndIsr newLeaderAndIsrWithNewLeaderEpoch() { |
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.
Seems no usage.
f391276 to
b03b9eb
Compare
b03b9eb to
270af0a
Compare
Purpose
Linked issue: #1397
Brief change log
Tests
API and Format
Documentation