Jason Gustafson created KAFKA-7906:
--------------------------------------

             Summary: Improve failed leader election logging
                 Key: KAFKA-7906
                 URL: https://issues.apache.org/jira/browse/KAFKA-7906
             Project: Kafka
          Issue Type: Improvement
            Reporter: Jason Gustafson


We often see annoying log messages like the following in the state change log:
{code}
[2019-02-05 00:02:51,307] ERROR [Controller id=13 epoch=14] Controller 13 epoch 
14 failed to change state for partition topic-3 from OnlinePartition to 
OnlinePartition
 (state.change.logger)
kafka.common.StateChangeFailedException: Failed to elect leader for partition 
topic-3 under strategy PreferredReplicaPartitionLeaderElectionStrategy
        at 
kafka.controller.PartitionStateMachine$$anonfun$doElectLeaderForPartitions$3.apply(PartitionStateMachine.scala:328)
        at 
kafka.controller.PartitionStateMachine$$anonfun$doElectLeaderForPartitions$3.apply(PartitionStateMachine.scala:326)
        at 
scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
        at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:48)
        at 
kafka.controller.PartitionStateMachine.doElectLeaderForPartitions(PartitionStateMachine.scala:326)
        at 
kafka.controller.PartitionStateMachine.electLeaderForPartitions(PartitionStateMachine.scala:254)
        at 
kafka.controller.PartitionStateMachine.doHandleStateChanges(PartitionStateMachine.scala:175)
        at 
kafka.controller.PartitionStateMachine.handleStateChanges(PartitionStateMachine.scala:116)
{code}

The stack trace is not adding any value and the message doesn't explain why the 
election failed. You have to read the code to figure it out. It's also curious 
that you have to look in the state change log for failed leader elections in 
the first place. It would be more intuitive to put these in the controller log. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to