Repository: kafka
Updated Branches:
  refs/heads/trunk 043190c60 -> 09b2b3cbe


kafka-1699; autoRebalanceScheduler.shutdown() causes deadlock while controller 
shutting down; patched by Sriharsha Chintalapani; reviewed by Jun Rao


Project: http://git-wip-us.apache.org/repos/asf/kafka/repo
Commit: http://git-wip-us.apache.org/repos/asf/kafka/commit/09b2b3cb
Tree: http://git-wip-us.apache.org/repos/asf/kafka/tree/09b2b3cb
Diff: http://git-wip-us.apache.org/repos/asf/kafka/diff/09b2b3cb

Branch: refs/heads/trunk
Commit: 09b2b3cbe07e8cdea42434fa6c54af0a064a93a2
Parents: 043190c
Author: Sriharsha Chintalapani <[email protected]>
Authored: Thu Oct 9 21:08:38 2014 -0700
Committer: Jun Rao <[email protected]>
Committed: Thu Oct 9 21:08:38 2014 -0700

----------------------------------------------------------------------
 core/src/main/scala/kafka/controller/KafkaController.scala | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kafka/blob/09b2b3cb/core/src/main/scala/kafka/controller/KafkaController.scala
----------------------------------------------------------------------
diff --git a/core/src/main/scala/kafka/controller/KafkaController.scala 
b/core/src/main/scala/kafka/controller/KafkaController.scala
index 381c52f..51a5bad 100644
--- a/core/src/main/scala/kafka/controller/KafkaController.scala
+++ b/core/src/main/scala/kafka/controller/KafkaController.scala
@@ -345,12 +345,13 @@ class KafkaController(val config : KafkaConfig, zkClient: 
ZkClient, val brokerSt
     if (deleteTopicManager != null)
       deleteTopicManager.shutdown()
 
+    // shutdown leader rebalance scheduler
+    if (config.autoLeaderRebalanceEnable)
+      autoRebalanceScheduler.shutdown()
+
     inLock(controllerContext.controllerLock) {
       // de-register partition ISR listener for on-going partition 
reassignment task
       deregisterReassignedPartitionsIsrChangeListeners()
-      // shutdown leader rebalance scheduler
-      if (config.autoLeaderRebalanceEnable)
-        autoRebalanceScheduler.shutdown()
       // shutdown partition state machine
       partitionStateMachine.shutdown()
       // shutdown replica state machine

Reply via email to