[jira] [Commented] (KAFKA-13906) Invalid replica state transition
[ https://issues.apache.org/jira/browse/KAFKA-13906?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17869164#comment-17869164 ] Gaurav Narula commented on KAFKA-13906: --- Hi [~johnnyhsu] I wanted to check if you're still working on this? Please feel free to assign it to me otherwise as I think I may have a workaround. > Invalid replica state transition > > > Key: KAFKA-13906 > URL: https://issues.apache.org/jira/browse/KAFKA-13906 > Project: Kafka > Issue Type: Bug > Components: controller, core, replication >Affects Versions: 3.1.0, 3.0.0, 3.0.1, 3.2.0, 3.1.1, 3.3.0, 3.0.2, 3.1.2, > 3.2.1 >Reporter: Igor Soarez >Assignee: Johnny Hsu >Priority: Major > Labels: BUG, controller, replication, reproducible-bug > > The controller runs into an IllegalStateException when reacting to changes in > broker membership status if there are topics that are pending deletion. > > How to reproduce: > # Setup cluster with 3 brokers > # Create a topic with a partition being led by each broker and produce some > data > # Kill one of the brokers that is not the controller, and keep that broker > down > # Delete the topic > # Restart the other broker that is not the controller > > Logs and stacktrace: > {{[2022-05-16 11:53:25,482] ERROR [Controller id=1 epoch=1] Controller 1 > epoch 1 initiated state change of replica 3 for partition test-topic-2 from > ReplicaDeletionSuccessful to ReplicaDeletionIneligible failed > (state.change.logger)}} > {{java.lang.IllegalStateException: Replica > [Topic=test-topic,Partition=2,Replica=3] should be in the > OfflineReplica,ReplicaDeletionStarted states before moving to > ReplicaDeletionIneligible state. Instead it is in ReplicaDeletionSuccessful > state}} > {{ at > kafka.controller.ZkReplicaStateMachine.logInvalidTransition(ReplicaStateMachine.scala:442)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2$adapted(ReplicaStateMachine.scala:164)}} > {{ at scala.collection.immutable.List.foreach(List.scala:333)}} > {{ at > kafka.controller.ZkReplicaStateMachine.doHandleStateChanges(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$handleStateChanges$2(ReplicaStateMachine.scala:112)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$handleStateChanges$2$adapted(ReplicaStateMachine.scala:111)}} > {{ at > kafka.utils.Implicits$MapExtensionMethods$.$anonfun$forKeyValue$1(Implicits.scala:62)}} > {{ at > scala.collection.immutable.HashMap.foreachEntry(HashMap.scala:1092)}} > {{ at > kafka.controller.ZkReplicaStateMachine.handleStateChanges(ReplicaStateMachine.scala:111)}} > {{ at > kafka.controller.TopicDeletionManager.failReplicaDeletion(TopicDeletionManager.scala:157)}} > {{ at > kafka.controller.KafkaController.onReplicasBecomeOffline(KafkaController.scala:638)}} > {{ at > kafka.controller.KafkaController.onBrokerFailure(KafkaController.scala:599)}} > {{ at > kafka.controller.KafkaController.processBrokerChange(KafkaController.scala:1623)}} > {{ at > kafka.controller.KafkaController.process(KafkaController.scala:2534)}} > {{ at > kafka.controller.QueuedEvent.process(ControllerEventManager.scala:52)}} > {{ at > kafka.controller.ControllerEventManager$ControllerEventThread.process$1(ControllerEventManager.scala:130)}} > {{--}} > {{[2022-05-16 11:53:40,726] ERROR [Controller id=1 epoch=1] Controller 1 > epoch 1 initiated state change of replica 3 for partition test-topic-2 from > ReplicaDeletionSuccessful to OnlineReplica failed (state.change.logger)}} > {{java.lang.IllegalStateException: Replica > [Topic=test-topic,Partition=2,Replica=3] should be in the > NewReplica,OnlineReplica,OfflineReplica,ReplicaDeletionIneligible states > before moving to OnlineReplica state. Instead it is in > ReplicaDeletionSuccessful state}} > {{ at > kafka.controller.ZkReplicaStateMachine.logInvalidTransition(ReplicaStateMachine.scala:442)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2$adapted(ReplicaStateMachine.scala:164)}} > {{ at scala.collection.immutable.List.foreach(List.scala:333)}} > {{ at > kafka.controller.ZkReplicaStateMachine.doHandleStateChanges(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$handleStateChanges$2(ReplicaStateMachine.scala:112)}} > {{ at >
[jira] [Commented] (KAFKA-13906) Invalid replica state transition
[ https://issues.apache.org/jira/browse/KAFKA-13906?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17832368#comment-17832368 ] Johnny Hsu commented on KAFKA-13906: hey [~soarez] [~showuon] I would like to work on this, let me assign this to myself, thanks for reporting this > Invalid replica state transition > > > Key: KAFKA-13906 > URL: https://issues.apache.org/jira/browse/KAFKA-13906 > Project: Kafka > Issue Type: Bug > Components: controller, core, replication >Affects Versions: 3.1.0, 3.0.0, 3.0.1, 3.2.0, 3.1.1, 3.3.0, 3.0.2, 3.1.2, > 3.2.1 >Reporter: Igor Soarez >Priority: Major > Labels: BUG, controller, replication, reproducible-bug > > The controller runs into an IllegalStateException when reacting to changes in > broker membership status if there are topics that are pending deletion. > > How to reproduce: > # Setup cluster with 3 brokers > # Create a topic with a partition being led by each broker and produce some > data > # Kill one of the brokers that is not the controller, and keep that broker > down > # Delete the topic > # Restart the other broker that is not the controller > > Logs and stacktrace: > {{[2022-05-16 11:53:25,482] ERROR [Controller id=1 epoch=1] Controller 1 > epoch 1 initiated state change of replica 3 for partition test-topic-2 from > ReplicaDeletionSuccessful to ReplicaDeletionIneligible failed > (state.change.logger)}} > {{java.lang.IllegalStateException: Replica > [Topic=test-topic,Partition=2,Replica=3] should be in the > OfflineReplica,ReplicaDeletionStarted states before moving to > ReplicaDeletionIneligible state. Instead it is in ReplicaDeletionSuccessful > state}} > {{ at > kafka.controller.ZkReplicaStateMachine.logInvalidTransition(ReplicaStateMachine.scala:442)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2$adapted(ReplicaStateMachine.scala:164)}} > {{ at scala.collection.immutable.List.foreach(List.scala:333)}} > {{ at > kafka.controller.ZkReplicaStateMachine.doHandleStateChanges(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$handleStateChanges$2(ReplicaStateMachine.scala:112)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$handleStateChanges$2$adapted(ReplicaStateMachine.scala:111)}} > {{ at > kafka.utils.Implicits$MapExtensionMethods$.$anonfun$forKeyValue$1(Implicits.scala:62)}} > {{ at > scala.collection.immutable.HashMap.foreachEntry(HashMap.scala:1092)}} > {{ at > kafka.controller.ZkReplicaStateMachine.handleStateChanges(ReplicaStateMachine.scala:111)}} > {{ at > kafka.controller.TopicDeletionManager.failReplicaDeletion(TopicDeletionManager.scala:157)}} > {{ at > kafka.controller.KafkaController.onReplicasBecomeOffline(KafkaController.scala:638)}} > {{ at > kafka.controller.KafkaController.onBrokerFailure(KafkaController.scala:599)}} > {{ at > kafka.controller.KafkaController.processBrokerChange(KafkaController.scala:1623)}} > {{ at > kafka.controller.KafkaController.process(KafkaController.scala:2534)}} > {{ at > kafka.controller.QueuedEvent.process(ControllerEventManager.scala:52)}} > {{ at > kafka.controller.ControllerEventManager$ControllerEventThread.process$1(ControllerEventManager.scala:130)}} > {{--}} > {{[2022-05-16 11:53:40,726] ERROR [Controller id=1 epoch=1] Controller 1 > epoch 1 initiated state change of replica 3 for partition test-topic-2 from > ReplicaDeletionSuccessful to OnlineReplica failed (state.change.logger)}} > {{java.lang.IllegalStateException: Replica > [Topic=test-topic,Partition=2,Replica=3] should be in the > NewReplica,OnlineReplica,OfflineReplica,ReplicaDeletionIneligible states > before moving to OnlineReplica state. Instead it is in > ReplicaDeletionSuccessful state}} > {{ at > kafka.controller.ZkReplicaStateMachine.logInvalidTransition(ReplicaStateMachine.scala:442)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2$adapted(ReplicaStateMachine.scala:164)}} > {{ at scala.collection.immutable.List.foreach(List.scala:333)}} > {{ at > kafka.controller.ZkReplicaStateMachine.doHandleStateChanges(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$handleStateChanges$2(ReplicaStateMachine.scala:112)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$handleStateChanges$2$adapted(ReplicaStateMachine.scala:111)}} > {{
[jira] [Commented] (KAFKA-13906) Invalid replica state transition
[ https://issues.apache.org/jira/browse/KAFKA-13906?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17828365#comment-17828365 ] Igor Soarez commented on KAFKA-13906: - That is correct [~showuon] > Invalid replica state transition > > > Key: KAFKA-13906 > URL: https://issues.apache.org/jira/browse/KAFKA-13906 > Project: Kafka > Issue Type: Bug > Components: controller, core, replication >Affects Versions: 3.1.0, 3.0.0, 3.0.1, 3.2.0, 3.1.1, 3.3.0, 3.0.2, 3.1.2, > 3.2.1 >Reporter: Igor Soarez >Priority: Major > Labels: BUG, controller, replication, reproducible-bug > > The controller runs into an IllegalStateException when reacting to changes in > broker membership status if there are topics that are pending deletion. > > How to reproduce: > # Setup cluster with 3 brokers > # Create a topic with a partition being led by each broker and produce some > data > # Kill one of the brokers that is not the controller, and keep that broker > down > # Delete the topic > # Restart the other broker that is not the controller > > Logs and stacktrace: > {{[2022-05-16 11:53:25,482] ERROR [Controller id=1 epoch=1] Controller 1 > epoch 1 initiated state change of replica 3 for partition test-topic-2 from > ReplicaDeletionSuccessful to ReplicaDeletionIneligible failed > (state.change.logger)}} > {{java.lang.IllegalStateException: Replica > [Topic=test-topic,Partition=2,Replica=3] should be in the > OfflineReplica,ReplicaDeletionStarted states before moving to > ReplicaDeletionIneligible state. Instead it is in ReplicaDeletionSuccessful > state}} > {{ at > kafka.controller.ZkReplicaStateMachine.logInvalidTransition(ReplicaStateMachine.scala:442)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2$adapted(ReplicaStateMachine.scala:164)}} > {{ at scala.collection.immutable.List.foreach(List.scala:333)}} > {{ at > kafka.controller.ZkReplicaStateMachine.doHandleStateChanges(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$handleStateChanges$2(ReplicaStateMachine.scala:112)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$handleStateChanges$2$adapted(ReplicaStateMachine.scala:111)}} > {{ at > kafka.utils.Implicits$MapExtensionMethods$.$anonfun$forKeyValue$1(Implicits.scala:62)}} > {{ at > scala.collection.immutable.HashMap.foreachEntry(HashMap.scala:1092)}} > {{ at > kafka.controller.ZkReplicaStateMachine.handleStateChanges(ReplicaStateMachine.scala:111)}} > {{ at > kafka.controller.TopicDeletionManager.failReplicaDeletion(TopicDeletionManager.scala:157)}} > {{ at > kafka.controller.KafkaController.onReplicasBecomeOffline(KafkaController.scala:638)}} > {{ at > kafka.controller.KafkaController.onBrokerFailure(KafkaController.scala:599)}} > {{ at > kafka.controller.KafkaController.processBrokerChange(KafkaController.scala:1623)}} > {{ at > kafka.controller.KafkaController.process(KafkaController.scala:2534)}} > {{ at > kafka.controller.QueuedEvent.process(ControllerEventManager.scala:52)}} > {{ at > kafka.controller.ControllerEventManager$ControllerEventThread.process$1(ControllerEventManager.scala:130)}} > {{--}} > {{[2022-05-16 11:53:40,726] ERROR [Controller id=1 epoch=1] Controller 1 > epoch 1 initiated state change of replica 3 for partition test-topic-2 from > ReplicaDeletionSuccessful to OnlineReplica failed (state.change.logger)}} > {{java.lang.IllegalStateException: Replica > [Topic=test-topic,Partition=2,Replica=3] should be in the > NewReplica,OnlineReplica,OfflineReplica,ReplicaDeletionIneligible states > before moving to OnlineReplica state. Instead it is in > ReplicaDeletionSuccessful state}} > {{ at > kafka.controller.ZkReplicaStateMachine.logInvalidTransition(ReplicaStateMachine.scala:442)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2$adapted(ReplicaStateMachine.scala:164)}} > {{ at scala.collection.immutable.List.foreach(List.scala:333)}} > {{ at > kafka.controller.ZkReplicaStateMachine.doHandleStateChanges(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$handleStateChanges$2(ReplicaStateMachine.scala:112)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$handleStateChanges$2$adapted(ReplicaStateMachine.scala:111)}} > {{ at >
[jira] [Commented] (KAFKA-13906) Invalid replica state transition
[ https://issues.apache.org/jira/browse/KAFKA-13906?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17828305#comment-17828305 ] Luke Chen commented on KAFKA-13906: --- Also, we should also verify if this happen in KRaft mode. > Invalid replica state transition > > > Key: KAFKA-13906 > URL: https://issues.apache.org/jira/browse/KAFKA-13906 > Project: Kafka > Issue Type: Bug > Components: controller, core, replication >Affects Versions: 3.1.0, 3.0.0, 3.0.1, 3.2.0, 3.1.1, 3.3.0, 3.0.2, 3.1.2, > 3.2.1 >Reporter: Igor Soarez >Priority: Major > Labels: BUG, controller, replication, reproducible-bug > > The controller runs into an IllegalStateException when reacting to changes in > broker membership status if there are topics that are pending deletion. > > How to reproduce: > # Setup cluster with 3 brokers > # Create a topic with a partition being led by each broker and produce some > data > # Kill one of the brokers that is not the controller, and keep that broker > down > # Delete the topic > # Restart the other broker that is not the controller > > Logs and stacktrace: > {{[2022-05-16 11:53:25,482] ERROR [Controller id=1 epoch=1] Controller 1 > epoch 1 initiated state change of replica 3 for partition test-topic-2 from > ReplicaDeletionSuccessful to ReplicaDeletionIneligible failed > (state.change.logger)}} > {{java.lang.IllegalStateException: Replica > [Topic=test-topic,Partition=2,Replica=3] should be in the > OfflineReplica,ReplicaDeletionStarted states before moving to > ReplicaDeletionIneligible state. Instead it is in ReplicaDeletionSuccessful > state}} > {{ at > kafka.controller.ZkReplicaStateMachine.logInvalidTransition(ReplicaStateMachine.scala:442)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2$adapted(ReplicaStateMachine.scala:164)}} > {{ at scala.collection.immutable.List.foreach(List.scala:333)}} > {{ at > kafka.controller.ZkReplicaStateMachine.doHandleStateChanges(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$handleStateChanges$2(ReplicaStateMachine.scala:112)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$handleStateChanges$2$adapted(ReplicaStateMachine.scala:111)}} > {{ at > kafka.utils.Implicits$MapExtensionMethods$.$anonfun$forKeyValue$1(Implicits.scala:62)}} > {{ at > scala.collection.immutable.HashMap.foreachEntry(HashMap.scala:1092)}} > {{ at > kafka.controller.ZkReplicaStateMachine.handleStateChanges(ReplicaStateMachine.scala:111)}} > {{ at > kafka.controller.TopicDeletionManager.failReplicaDeletion(TopicDeletionManager.scala:157)}} > {{ at > kafka.controller.KafkaController.onReplicasBecomeOffline(KafkaController.scala:638)}} > {{ at > kafka.controller.KafkaController.onBrokerFailure(KafkaController.scala:599)}} > {{ at > kafka.controller.KafkaController.processBrokerChange(KafkaController.scala:1623)}} > {{ at > kafka.controller.KafkaController.process(KafkaController.scala:2534)}} > {{ at > kafka.controller.QueuedEvent.process(ControllerEventManager.scala:52)}} > {{ at > kafka.controller.ControllerEventManager$ControllerEventThread.process$1(ControllerEventManager.scala:130)}} > {{--}} > {{[2022-05-16 11:53:40,726] ERROR [Controller id=1 epoch=1] Controller 1 > epoch 1 initiated state change of replica 3 for partition test-topic-2 from > ReplicaDeletionSuccessful to OnlineReplica failed (state.change.logger)}} > {{java.lang.IllegalStateException: Replica > [Topic=test-topic,Partition=2,Replica=3] should be in the > NewReplica,OnlineReplica,OfflineReplica,ReplicaDeletionIneligible states > before moving to OnlineReplica state. Instead it is in > ReplicaDeletionSuccessful state}} > {{ at > kafka.controller.ZkReplicaStateMachine.logInvalidTransition(ReplicaStateMachine.scala:442)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2$adapted(ReplicaStateMachine.scala:164)}} > {{ at scala.collection.immutable.List.foreach(List.scala:333)}} > {{ at > kafka.controller.ZkReplicaStateMachine.doHandleStateChanges(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$handleStateChanges$2(ReplicaStateMachine.scala:112)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$handleStateChanges$2$adapted(ReplicaStateMachine.scala:111)}} > {{ at >
[jira] [Commented] (KAFKA-13906) Invalid replica state transition
[ https://issues.apache.org/jira/browse/KAFKA-13906?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17828303#comment-17828303 ] Luke Chen commented on KAFKA-13906: --- We ran into similar situation recently. [~soarez], I'd like to confirm my understanding is correct. It looks like the issue has no impact to the topic because the topic is already deleted. The only issue is that the error log is confusing users. Is my understanding correct? > Invalid replica state transition > > > Key: KAFKA-13906 > URL: https://issues.apache.org/jira/browse/KAFKA-13906 > Project: Kafka > Issue Type: Bug > Components: controller, core, replication >Affects Versions: 3.1.0, 3.0.0, 3.0.1, 3.2.0, 3.1.1, 3.3.0, 3.0.2, 3.1.2, > 3.2.1 >Reporter: Igor Soarez >Priority: Major > Labels: BUG, controller, replication, reproducible-bug > > The controller runs into an IllegalStateException when reacting to changes in > broker membership status if there are topics that are pending deletion. > > How to reproduce: > # Setup cluster with 3 brokers > # Create a topic with a partition being led by each broker and produce some > data > # Kill one of the brokers that is not the controller, and keep that broker > down > # Delete the topic > # Restart the other broker that is not the controller > > Logs and stacktrace: > {{[2022-05-16 11:53:25,482] ERROR [Controller id=1 epoch=1] Controller 1 > epoch 1 initiated state change of replica 3 for partition test-topic-2 from > ReplicaDeletionSuccessful to ReplicaDeletionIneligible failed > (state.change.logger)}} > {{java.lang.IllegalStateException: Replica > [Topic=test-topic,Partition=2,Replica=3] should be in the > OfflineReplica,ReplicaDeletionStarted states before moving to > ReplicaDeletionIneligible state. Instead it is in ReplicaDeletionSuccessful > state}} > {{ at > kafka.controller.ZkReplicaStateMachine.logInvalidTransition(ReplicaStateMachine.scala:442)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2$adapted(ReplicaStateMachine.scala:164)}} > {{ at scala.collection.immutable.List.foreach(List.scala:333)}} > {{ at > kafka.controller.ZkReplicaStateMachine.doHandleStateChanges(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$handleStateChanges$2(ReplicaStateMachine.scala:112)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$handleStateChanges$2$adapted(ReplicaStateMachine.scala:111)}} > {{ at > kafka.utils.Implicits$MapExtensionMethods$.$anonfun$forKeyValue$1(Implicits.scala:62)}} > {{ at > scala.collection.immutable.HashMap.foreachEntry(HashMap.scala:1092)}} > {{ at > kafka.controller.ZkReplicaStateMachine.handleStateChanges(ReplicaStateMachine.scala:111)}} > {{ at > kafka.controller.TopicDeletionManager.failReplicaDeletion(TopicDeletionManager.scala:157)}} > {{ at > kafka.controller.KafkaController.onReplicasBecomeOffline(KafkaController.scala:638)}} > {{ at > kafka.controller.KafkaController.onBrokerFailure(KafkaController.scala:599)}} > {{ at > kafka.controller.KafkaController.processBrokerChange(KafkaController.scala:1623)}} > {{ at > kafka.controller.KafkaController.process(KafkaController.scala:2534)}} > {{ at > kafka.controller.QueuedEvent.process(ControllerEventManager.scala:52)}} > {{ at > kafka.controller.ControllerEventManager$ControllerEventThread.process$1(ControllerEventManager.scala:130)}} > {{--}} > {{[2022-05-16 11:53:40,726] ERROR [Controller id=1 epoch=1] Controller 1 > epoch 1 initiated state change of replica 3 for partition test-topic-2 from > ReplicaDeletionSuccessful to OnlineReplica failed (state.change.logger)}} > {{java.lang.IllegalStateException: Replica > [Topic=test-topic,Partition=2,Replica=3] should be in the > NewReplica,OnlineReplica,OfflineReplica,ReplicaDeletionIneligible states > before moving to OnlineReplica state. Instead it is in > ReplicaDeletionSuccessful state}} > {{ at > kafka.controller.ZkReplicaStateMachine.logInvalidTransition(ReplicaStateMachine.scala:442)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2(ReplicaStateMachine.scala:164)}} > {{ at > kafka.controller.ZkReplicaStateMachine.$anonfun$doHandleStateChanges$2$adapted(ReplicaStateMachine.scala:164)}} > {{ at scala.collection.immutable.List.foreach(List.scala:333)}} > {{ at > kafka.controller.ZkReplicaStateMachine.doHandleStateChanges(ReplicaStateMachine.scala:164)}} > {{ at >