[ https://issues.apache.org/jira/browse/KAFKA-6146?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Onur Karaman updated KAFKA-6146: -------------------------------- Description: We currently enqueue a PreferredReplicaLeaderElection controller event in PreferredReplicaElectionHandler's handleCreation, handleDeletion, and handleDataChange. We can just enqueue the event upon znode creation and after preferred replica leader election completes. The processing of this latter enqueue will register the exist watch on PreferredReplicaElectionZNode and perform any pending preferred replica leader election that may have occurred between completion and registration. (was: We currently enqueue a PreferredReplicaLeaderElection controller event in PreferredReplicaElectionHandler's handleCreation, handleDeletion, and handleDataChange. We really only need to enqueue the event and re-register the exist watch on PreferredReplicaElectionZNode after preferred replica leader election completes.) > minimize the number of triggers enqueuing PreferredReplicaLeaderElection > events > ------------------------------------------------------------------------------- > > Key: KAFKA-6146 > URL: https://issues.apache.org/jira/browse/KAFKA-6146 > Project: Kafka > Issue Type: Sub-task > Affects Versions: 1.1.0 > Reporter: Jun Rao > Fix For: 1.1.0 > > > We currently enqueue a PreferredReplicaLeaderElection controller event in > PreferredReplicaElectionHandler's handleCreation, handleDeletion, and > handleDataChange. We can just enqueue the event upon znode creation and after > preferred replica leader election completes. The processing of this latter > enqueue will register the exist watch on PreferredReplicaElectionZNode and > perform any pending preferred replica leader election that may have occurred > between completion and registration. -- This message was sent by Atlassian JIRA (v6.4.14#64029)