Mayuresh Gharat created KAFKA-3126: -------------------------------------- Summary: Weird behavior in kafkaController on Controlled shutdowns. The leaderAndIsr in zookeeper is not updated during controlled shutdown. Key: KAFKA-3126 URL: https://issues.apache.org/jira/browse/KAFKA-3126 Project: Kafka Issue Type: Bug Components: core Reporter: Mayuresh Gharat
Consider Broker B is controller, broker A is undergoing shutdown. 2016/01/14 19:49:22.884 [KafkaController] [Controller B]: Shutting down broker A 2016/01/14 19:49:22.918 [ReplicaStateMachine] [Replica state machine on controller B]: Invoking state change to OfflineReplica for replicas [Topic=testTopic1,Partition=1,Replica=A] -------> (1) 2016/01/14 19:49:22.930 [KafkaController] [Controller B]: New leader and ISR for partition [testTopic1,1] is {"leader":D,"leader_epoch":1,"isr":[D]} ------> (2) 2016/01/14 19:49:23.028 [ReplicaStateMachine] [Replica state machine on controller B]: Invoking state change to OfflineReplica for replicas [Topic=testTopic2,Partition=1,Replica=A] -------> (3) 2016/01/14 19:49:23.032 [KafkaController] [Controller B]: New leader and ISR for partition [testTopic2,1] is {"leader":C,"leader_epoch":10,"isr":[C]} -----> (4) 2016/01/14 19:49:23.996 [KafkaController] [Controller B]: Broker failure callback for A 2016/01/14 19:49:23.997 [PartitionStateMachine] [Partition state machine on Controller B]: Invoking state change to OfflinePartition for partitions 2016/01/14 19:49:23.998 [ReplicaStateMachine] [Replica state machine on controller B]: Invoking state change to OfflineReplica for replicas [Topic=__consumer_offsets,Partition=59,Replica=A],[Topic=__consumer_offsets,Partition=81,Replica=A],[Topic=__consumer_offsets,Partition=61,Replica=A],[Topic=testTopic2,Partition=0,Replica=A],[Topic=__consumer_offsets,Partition=5,Replica=A],[Topic=__consumer_offsets,Partition=89,Replica=A],[Topic=__consumer_offsets,Partition=1,Replica=A],[Topic=__consumer_offsets,Partition=22,Replica=A],[Topic=__consumer_offsets,Partition=60,Replica=A],[Topic=testTopic1,Partition=2,Replica=A],[Topic=__consumer_offsets,Partition=96,Replica=A],[Topic=testTopic2,Partition=1,Replica=A],[Topic=__consumer_offsets,Partition=36,Replica=A],[Topic=__consumer_offsets,Partition=10,Replica=A],[Topic=__consumer_offsets,Partition=69,Replica=A],[Topic=__consumer_offsets,Partition=43,Replica=A],[Topic=__consumer_offsets,Partition=57,Replica=A],[Topic=__consumer_offsets,Partition=21,Replica=A],[Topic=__consumer_offsets,Partition=46,Replica=A],[Topic=__consumer_offsets,Partition=83,Replica=A],[Topic=__consumer_offsets,Partition=17,Replica=A],[Topic=__consumer_offsets,Partition=73,Replica=A],[Topic=__consumer_offsets,Partition=58,Replica=A],[Topic=__consumer_offsets,Partition=26,Replica=A],[Topic=__consumer_offsets,Partition=2,Replica=A],[Topic=__consumer_offsets,Partition=70,Replica=A],[Topic=__consumer_offsets,Partition=13,Replica=A],[Topic=__consumer_offsets,Partition=62,Replica=A],[Topic=__consumer_offsets,Partition=25,Replica=A],[Topic=__consumer_offsets,Partition=9,Replica=A],[Topic=__consumer_offsets,Partition=29,Replica=A],[Topic=__consumer_offsets,Partition=97,Replica=A],[Topic=__consumer_offsets,Partition=53,Replica=A],[Topic=__consumer_offsets,Partition=77,Replica=A],[Topic=__consumer_offsets,Partition=40,Replica=A],[Topic=__consumer_offsets,Partition=52,Replica=A],[Topic=__consumer_offsets,Partition=50,Replica=A],[Topic=__consumer_offsets,Partition=64,Replica=A],[Topic=__consumer_offsets,Partition=23,Replica=A],[Topic=__consumer_offsets,Partition=55,Replica=A],[Topic=__consumer_offsets,Partition=93,Replica=A],[Topic=__consumer_offsets,Partition=12,Replica=A],[Topic=__consumer_offsets,Partition=16,Replica=A],[Topic=testTopic1,Partition=4,Replica=A],[Topic=__consumer_offsets,Partition=38,Replica=A],[Topic=__consumer_offsets,Partition=65,Replica=A],[Topic=__consumer_offsets,Partition=95,Replica=A],[Topic=__consumer_offsets,Partition=31,Replica=A],[Topic=__consumer_offsets,Partition=88,Replica=A],[Topic=__consumer_offsets,Partition=19,Replica=A],[Topic=__consumer_offsets,Partition=98,Replica=A],[Topic=__consumer_offsets,Partition=45,Replica=A],[Topic=__consumer_offsets,Partition=79,Replica=A],[Topic=__consumer_offsets,Partition=94,Replica=A],[Topic=__consumer_offsets,Partition=4,Replica=A],[Topic=__consumer_offsets,Partition=91,Replica=A],[Topic=__consumer_offsets,Partition=86,Replica=A],[Topic=__consumer_offsets,Partition=0,Replica=A],[Topic=__consumer_offsets,Partition=85,Replica=A],[Topic=testTopic1,Partition=6,Replica=A],[Topic=__consumer_offsets,Partition=24,Replica=A],[Topic=__consumer_offsets,Partition=72,Replica=A],[Topic=__consumer_offsets,Partition=37,Replica=A],[Topic=__consumer_offsets,Partition=82,Replica=A],[Topic=__consumer_offsets,Partition=76,Replica=A],[Topic=__consumer_offsets,Partition=7,Replica=A],[Topic=__consumer_offsets,Partition=74,Replica=A],[Topic=testTopic1,Partition=1,Replica=A],[Topic=__consumer_offsets,Partition=47,Replica=A],[Topic=__consumer_offsets,Partition=33,Replica=A],[Topic=__consumer_offsets,Partition=49,Replica=A],[Topic=__consumer_offsets,Partition=34,Replica=A],[Topic=__consumer_offsets,Partition=28,Replica=A],[Topic=__consumer_offsets,Partition=48,Replica=A],[Topic=__consumer_offsets,Partition=14,Replica=A],[Topic=__consumer_offsets,Partition=71,Replica=A],[Topic=__consumer_offsets,Partition=41,Replica=A],[Topic=__consumer_offsets,Partition=67,Replica=A],[Topic=__consumer_offsets,Partition=84,Replica=A],[Topic=__consumer_offsets,Partition=35,Replica=A],[Topic=__consumer_offsets,Partition=11,Replica=A] 2016/01/14 19:49:24.029 [KafkaController] [Controller B]: New leader and ISR for partition [testTopic2,1] is {"leader":C,"leader_epoch":11,"isr":[C]} ------> (5) 2016/01/14 19:49:24.212 [KafkaController] [Controller B]: Cannot remove replica A from ISR of partition [testTopic1,1] since it is not in the ISR. Leader = D ; ISR = List(D) ----------> (6) If after (1) and (2) controller gets rid of the replica A from the ISR in zookeeper for [testTopic1-1] as displayed in 6), why doesn't it do the same for [testTopic2-1] as per 5) ???? -- This message was sent by Atlassian JIRA (v6.3.4#6332)