Repository: kafka Updated Branches: refs/heads/trunk cbafc08a5 -> afb91a02a
MINOR: Add test brokers to list as they are created to ensure cleanup Author: Rajini Sivaram <rajinisiva...@googlemail.com> Reviewers: Apurva Mehta <apu...@confluent.io>, Ismael Juma <ism...@juma.me.uk> Closes #3471 from rajinisivaram/MINOR-shutdown-brokers Project: http://git-wip-us.apache.org/repos/asf/kafka/repo Commit: http://git-wip-us.apache.org/repos/asf/kafka/commit/afb91a02 Tree: http://git-wip-us.apache.org/repos/asf/kafka/tree/afb91a02 Diff: http://git-wip-us.apache.org/repos/asf/kafka/diff/afb91a02 Branch: refs/heads/trunk Commit: afb91a02ae1ef8aab6a33335eec0a07490b36390 Parents: cbafc08 Author: Rajini Sivaram <rajinisiva...@googlemail.com> Authored: Tue Jul 4 10:36:42 2017 +0100 Committer: Rajini Sivaram <rajinisiva...@googlemail.com> Committed: Tue Jul 4 10:36:42 2017 +0100 ---------------------------------------------------------------------- .../unit/kafka/integration/KafkaServerTestHarness.scala | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kafka/blob/afb91a02/core/src/test/scala/unit/kafka/integration/KafkaServerTestHarness.scala ---------------------------------------------------------------------- diff --git a/core/src/test/scala/unit/kafka/integration/KafkaServerTestHarness.scala b/core/src/test/scala/unit/kafka/integration/KafkaServerTestHarness.scala index da25d5c..ceeaffc 100755 --- a/core/src/test/scala/unit/kafka/integration/KafkaServerTestHarness.scala +++ b/core/src/test/scala/unit/kafka/integration/KafkaServerTestHarness.scala @@ -28,7 +28,7 @@ import org.apache.kafka.common.protocol.SecurityProtocol import org.apache.kafka.common.security.auth.KafkaPrincipal import org.junit.{After, Before} -import scala.collection.mutable.Buffer +import scala.collection.mutable.{ArrayBuffer, Buffer} import java.util.Properties import org.apache.kafka.common.network.ListenerName @@ -38,7 +38,7 @@ import org.apache.kafka.common.network.ListenerName */ abstract class KafkaServerTestHarness extends ZooKeeperTestHarness { var instanceConfigs: Seq[KafkaConfig] = null - var servers: Buffer[KafkaServer] = null + var servers: Buffer[KafkaServer] = new ArrayBuffer var brokerList: String = null var alive: Array[Boolean] = null val kafkaPrincipalType = KafkaPrincipal.USER_TYPE @@ -88,7 +88,10 @@ abstract class KafkaServerTestHarness extends ZooKeeperTestHarness { // default implementation is a no-op, it is overridden by subclasses if required configureSecurityBeforeServersStart() - servers = configs.map(TestUtils.createServer(_)).toBuffer + // Add each broker to `servers` buffer as soon as it is created to ensure that brokers + // are shutdown cleanly in tearDown even if a subsequent broker fails to start + for (config <- configs) + servers += TestUtils.createServer(config) brokerList = TestUtils.bootstrapServers(servers, listenerName) alive = new Array[Boolean](servers.length) Arrays.fill(alive, true)