diff --git a/src/server/src/main/java/io/cassandrareaper/service/RepairManager.java b/src/server/src/main/java/io/cassandrareaper/service/RepairManager.java index a27215441..8289819ee 100644 --- a/src/server/src/main/java/io/cassandrareaper/service/RepairManager.java +++ b/src/server/src/main/java/io/cassandrareaper/service/RepairManager.java @@ -46,7 +46,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public final class RepairManager { +public final class RepairManager implements AutoCloseable { private static final Logger LOG = LoggerFactory.getLogger(RepairManager.class); @@ -372,4 +372,10 @@ private static void releaseLead(AppContext context, UUID leaderElectionId) { } } } + + @Override + public void close() { + heart.close(); + executor.shutdownNow(); + } } diff --git a/src/server/src/test/java/io/cassandrareaper/acceptance/ReaperTestJettyRunner.java b/src/server/src/test/java/io/cassandrareaper/acceptance/ReaperTestJettyRunner.java index ff9dd50a9..b10817676 100644 --- a/src/server/src/test/java/io/cassandrareaper/acceptance/ReaperTestJettyRunner.java +++ b/src/server/src/test/java/io/cassandrareaper/acceptance/ReaperTestJettyRunner.java @@ -104,6 +104,7 @@ public Application newApplication() { @Override public void after() { + context.repairManager.close(); context.isRunning.set(false); try { Thread.sleep(100);