You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Manikumar Reddy (JIRA)" <ji...@apache.org> on 2016/05/13 07:25:13 UTC

[jira] [Commented] (KAFKA-3389) ReplicaStateMachine areAllReplicasForTopicDeleted check not handling well case when there are no replicas for topic

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

Manikumar Reddy commented on KAFKA-3389:
----------------------------------------

Scala map.forall(predicate) returns true for empty map. So I think this is not problem. 

> ReplicaStateMachine areAllReplicasForTopicDeleted check not handling well case when there are no replicas for topic
> -------------------------------------------------------------------------------------------------------------------
>
>                 Key: KAFKA-3389
>                 URL: https://issues.apache.org/jira/browse/KAFKA-3389
>             Project: Kafka
>          Issue Type: Bug
>          Components: controller
>    Affects Versions: 0.9.0.1
>            Reporter: Stevo Slavic
>            Assignee: Neha Narkhede
>            Priority: Minor
>
> Line ReplicaStateMachine.scala#L285
> {noformat}
> replicaStatesForTopic.forall(_._2 == ReplicaDeletionSuccessful)
> {noformat}
> which is return value of {{areAllReplicasForTopicDeleted}} function/check, probably should better be checking for
> {noformat}
> replicaStatesForTopic.isEmpty || replicaStatesForTopic.forall(_._2 == ReplicaDeletionSuccessful)
> {noformat}
> I noticed it because in controller logs I found entries like:
> {noformat}
> [2016-03-04 13:27:29,115] DEBUG [Replica state machine on controller 1]: Are all replicas for topic foo deleted Map() (kafka.controller.ReplicaStateMachine)
> {noformat}
> even though normally they look like:
> {noformat}
> [2016-03-04 09:33:41,036] DEBUG [Replica state machine on controller 1]: Are all replicas for topic foo deleted Map([Topic=foo,Partition=0,Replica=0] -> ReplicaDeletionStarted, [Topic=foo,Partition=0,Replica=3] -> ReplicaDeletionStarted, [Topic=foo,Partition=0,Replica=1] -> ReplicaDeletionSuccessful) (kafka.controller.ReplicaStateMachine)
> {noformat}
> This may cause topic deletion request never to be cleared from ZK even when topic has been deleted.



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