THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
Code Block | ||
---|---|---|
| ||
diff --git a/clients/src/main/resources/common/message/LeaderAndIsrRequest.json b/clients/src/main/resources/common/message/LeaderAndIsrRequest.json index b8988351c..d45727078 100644 --- a/clients/src/main/resources/common/message/LeaderAndIsrRequest.json +++ b/clients/src/main/resources/common/message/LeaderAndIsrRequest.json @@ -20,6 +20,8 @@ // Version 1 adds IsNew. // // Version 2 adds broker epoch and reorganizes the partitions by topic. + // + // Version 3 adds AddingReplicas and RemovingReplicas. "validVersions": "0-3", "fields": [ { "name": "ControllerId", "type": "int32", "versions": "0+", @@ -48,6 +50,8 @@ "about": "The ZooKeeper version." }, { "name": "Replicas", "type": "[]int32", "versions": "0+", "about": "The replica IDs." }, + { "name": "AddingReplicas", "type": "[]int32", "versions": "3+", + "about": "The replica IDs that we are adding this partition to." }, + { "name": "RetiringReplicasRemovingReplicas", "type": "[]int32", "versions": "3+", + "about": "The replica IDs that we are removing this partition from." }, { "name": "IsNew", "type": "bool", "versions": "1+", "default": "false", "ignorable": true, "about": "Whether the replica should have existed on the broker or not." } ]} |
...
Code Block |
---|
# Illustrating the rebalance of a single partition. # R is the current replicas, I is the ISR list, RR is retiringReplicasremovingReplicas and AR is addingReplicas R: [1, 2, 3], I: [1, 2, 3], AR: [], RR: [] # Reassignment called via API with targetReplicas=[3, 4, 5] R: [1, 2, 3, 4, 5], I: [1, 2, 3], AR: [4, 5], RR: [] R: [1, 2, 3, 4, 5], I: [1, 2, 3, 4], AR: [5], RR: [] # Cancellation called R: [1, 2, 3, 4], I: [1, 2, 3, 4], AR: [], RR: [] |
...