Joel Koshy created KAFKA-661:
--------------------------------

             Summary: Prevent a shutting down broker from re-entering the ISR
                 Key: KAFKA-661
                 URL: https://issues.apache.org/jira/browse/KAFKA-661
             Project: Kafka
          Issue Type: Bug
    Affects Versions: 0.8, 0.8.1
            Reporter: Joel Koshy
             Fix For: 0.8.1


There is a timing issue in controlled shutdown that affects low-volume topics. 
The leader that is being shut down receives a leaderAndIsrRequest informing it 
is no longer the leader and thus starts up a follower which starts issuing 
fetch requests to the new leader. We then shrink the ISR and send a 
StopReplicaRequest to the shutting down broker. However, the new leader upon 
receiving the fetch request expands the ISR again.

This does not really have critical impact in the sense that it can cause 
producers to that topic to timeout. However, there are probably very few or no 
produce requests coming in as it primarily affects low-volume topics. The 
shutdown logic itself seems to be working correctly in that the leader has been 
successfully moved.

One possible approach would be to use the callback feature in the 
ControllerBrokerRequestBatch and wait until the StopReplicaRequest has been 
processed by the shutting down broker before shrinking the ISR; and there are 
probably other ways as well.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to