THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
Code Block | ||
---|---|---|
| ||
/**
* Change the reassignments for one or more partitions.
*
* @param reassignments The reassignments to add, modify, or remove.
* @param options The options to use.
* @return The result.
*/
public AlterPartitionReassignmentsResult alterPartitionReassignments(
Map<TopicPartition, Optional<NewPartitionReassignment>> reassignments,
AlterPartitionReassignmentsOptions options);
/**
* A new partition reassignment, which can be applied via {@link AdminClient#alterPartitionReassignments(Map)}.
*/
public class NewPartitionReassignment {
private final List<Integer> targetBrokers;
...
}
class AlterPartitionAssignmentsResult {
Map<TopicPartition, Future<Void>> futures; // maps partitions to the results for each partition (success / failure)
Future<Void> all(); // Throws an exception if any reassignment was rejected
}
class AlterPartitionAssignmentsOptions extends AbstractOptions<> {
// contains timeoutMs
}
/**
* List some of the current partition reassignments.
*
* @param options The options to use.
* @param partitions The partitions to show reassignments for. Must be non-null.
*/
ListPartitionReassignmentsResult listPartitionReassignments(
ListPartitionReassignmentsOptions options,
Set<TopicPartition> partitions);
/**
* List all of the current partition reassignments for the given topics.
*
* @param options The options to use.
* @param topics The topics to show reassignments for. Must be non-null.
*/
ListPartitionReassignmentsResult listPartitionReassignments(
ListPartitionReassignmentsOptions options,
Set<String> topics);
/**
* List all of the current partition reassignments.
*
* @param options The options to use.
*/
ListPartitionReassignmentsResult listPartitionReassignments(
ListPartitionReassignmentsOptions options);
class ListPartitionReassignmentsOptions extends AbstractOptions<> {
// contains timeoutMs
}
class ListPartitionReassignmentsResult {
private final KafkaFuture<Map<TopicPartition, PartitionReassignment>> reassignments;
}
/**
* A partition reassignment, which has been listed via {@link AdminClient#listPartitionReassignments()}.
*/
public class PartitionReassignment {
/**
* The brokers which we want this partition to reside on.
*/
private final List<Integer> replicas;
/**
* The brokers which have in-sync replicas of this partition.
*/
private final List<Integer> isr;
/**
* The brokers that we are adding this partition to as part of a reassignment.
*/
private final List<Integer> addingReplicas;
/**
* The brokers that we are removing this partition from as part of a reassignment.
*/
private final List<Integer> removingReplicas;
} |
...
Code Block | ||
---|---|---|
| ||
{ "apiKey": 46, "type": "response", "name": "ListPartitionReassignmentsResponse", "validVersions": "0", "fields": [ { "name": "ThrottleTimeMs", "type": "int32", "versions": "0+", "about": "The duration in milliseconds for which the request was throttled due to a quota violation, or zero if the request did not violate any quota." }, { "name": "ErrorCode", "type": "int16", "versions": "0+", "about": "The top-level error code, or 0 on success." }, { "name": "ErrorMessage", "type": "string", "versions": "0+", "nullableVersions": "0+", "about": "The top-level error message, or null on success." }, { "name": "Topics", "type": "[]OngoingTopicReassignment", "versions": "0+", "about": "The ongoing reassignments for each topic.", "fields": [ { "name": "Name", "type": "string", "versions": "0+", "about": "The topic name." }, { "name": "Partitions", "type": "[]OngoingPartitionReassignment", "versions": "0+", "about": "The ongoing reassignments for each partition.", "fields": [ { "name": "PartitionIndex", "type": "int32", "versions": "0+", "about": "The index of the partition." }, { "name": "Replicas", "type": "[]int32", "versions": "0+", "about": "The current replica set." }, { "name": "Isr", "type": "[]int32", "versions": "0+", "about": "The current in-sync replica set." }, { "name": "AddingReplicas", "type": "[]int32", "versions": "0+", "about": "The set of replicas we are currently adding." }, { "name": "RemovingReplicas", "type": "[]int32", "versions": "0+", "about": "The set of replicas we are currently removing." } ]} ]} ] } |
...