Browse Source

KAFKA-4227; Shutdown AdminManager when KafkaServer is shutdown

Terminate topic purgatory thread in AdminManager during server shutdown to avoid threads being left around in unit tests.

Author: Rajini Sivaram <rajinisivaram@googlemail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #1927 from rajinisivaram/KAFKA-4227
pull/1929/head
Rajini Sivaram 8 years ago committed by Ismael Juma
parent
commit
281fac9ed6
  1. 4
      core/src/main/scala/kafka/server/AdminManager.scala
  2. 2
      core/src/main/scala/kafka/server/KafkaServer.scala

4
core/src/main/scala/kafka/server/AdminManager.scala

@ -155,4 +155,8 @@ class AdminManager(val config: KafkaConfig, @@ -155,4 +155,8 @@ class AdminManager(val config: KafkaConfig,
topicPurgatory.tryCompleteElseWatch(delayedDelete, delayedDeleteKeys)
}
}
def shutdown() {
topicPurgatory.shutdown()
}
}

2
core/src/main/scala/kafka/server/KafkaServer.scala

@ -589,6 +589,8 @@ class KafkaServer(val config: KafkaConfig, time: Time = SystemTime, threadNamePr @@ -589,6 +589,8 @@ class KafkaServer(val config: KafkaConfig, time: Time = SystemTime, threadNamePr
CoreUtils.swallow(authorizer.foreach(_.close()))
if(replicaManager != null)
CoreUtils.swallow(replicaManager.shutdown())
if (adminManager != null)
CoreUtils.swallow(adminManager.shutdown())
if(logManager != null)
CoreUtils.swallow(logManager.shutdown())
if(groupCoordinator != null)

Loading…
Cancel
Save