[ 
https://issues.apache.org/jira/browse/KAFKA-4415?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15709345#comment-15709345
 ] 

Dong Lin commented on KAFKA-4415:
---------------------------------

[~ijuma] As of current Kafka implementation, Kafka does send O(partitionNum * 
brokerNum) MetadataUpdateRequest when responding to ControlledShutdownRequest, 
where each MetadataUpdateRequest will contain only one partition. The 
optimization in https://github.com/apache/kafka/pull/2141 can reduce it to 
O(brokerNum) MetadataUpdateRequest, where each request includes O(partitionNum) 
partitions. Originally I have included that fix in KAFKA-4415 as well. But I 
moved it out of KAFKA-4415 and put into KAFKA-4444 because there is un-resolved 
problem in that optimization.

I just updated the description of JIRA to make it accurate.

> Reduce time to create and send MetadataUpdateRequest
> ----------------------------------------------------
>
>                 Key: KAFKA-4415
>                 URL: https://issues.apache.org/jira/browse/KAFKA-4415
>             Project: Kafka
>          Issue Type: Bug
>    Affects Versions: 0.10.1.0
>            Reporter: Dong Lin
>            Assignee: Dong Lin
>             Fix For: 0.10.2.0
>
>
> As of current implementation, when controller receives 
> ControlledShutdownRequest, it will 1) for every broker in the cluster, for 
> every partition on the broker which wants to shutdown, create an instance of 
> PartitionStateInfo and add it to 
> ControllerBrokerRequestBatch.,updateMetadataRequestMap; and 2) for every 
> broker, for every follower partitions on the broker which wants to shutdown, 
> send one MetadataUpdateRequst to that broker.
> In order to shutdown a broker, the controller will need to instantiate 
> O(partitionNum * brokerNum) PartitionStateInfo. This is not efficient. The 
> broker should only need to instantiate O(partitionNum) PartitionStateInfo.
> Micro-benchmark results show that this optimization can reduce the time of 
> processing ControlledShutdownRequest by 30%.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to