THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
Code Block |
---|
ChangeReplicaDirRequest => [ReplicaStatetopics topics => [ChangeReplicaDirRequestTopic] ReplicaStateChangeReplicaDirRequestTopic => topic partitions topic => str partitions => [ChangeReplicaDirRequestPartition] ChangeReplicaDirRequestPartition => partition dir partition => int32 dir => str |
...
Code Block |
---|
ChangeReplicaDirResponse => error_codetopics topics => [ChangeReplicaDirResponseTopic] ChangeReplicaDirResponseTopic => topic partitions error_codetopic => int16str partitions => [ChangeReplicaDirResponsePartition] ChangeReplicaDirResponsePartition => topic partition error_code topic => str partition => int32 error_code => int16 |
Create DescribeDirsRequest
Code Block |
---|
DescribeDirsRequest => log_dirs topics log_dirs => [str] // If this is emptynull, then all log directories will be queried topics => [str] // If this is emptynull, all topics will be queried |
Create DescribeDirsResponse
Code Block |
---|
DescribeDirsResponse => log_dirs log_dirs => [DescribeDirsResponseDirMetadata] DescribeDirsResponseDirMetadata => error_code path topics error_code => int16 path => str topics => [DescribeDirsResponseTopic] DescribeDirsResponseTopic => topic partitions topic => str partitions => [DescribeDirsResponsePartition] DescribeDirsResponsePartition => partition size log_end_offset is_temporary partition => int32 size => int64 log_end_offset => int64 is_temporary => boolean // True if replica is *.move |
Broker Config
1) Add config intra.broker.throttled.rate
. This config specified the maximum rate in bytes-per-second that can be used to move replica between log directories.
2) Add config num.replica.move.threads
. This config specified the numbe of threads in ReplicaMoveThreadPool
. The thread in this thread pool is responsible to moving replica between log directories.
...