summaryrefslogtreecommitdiffstats
path: root/clustercontroller-reindexer
diff options
context:
space:
mode:
authorJon Marius Venstad <venstad@gmail.com>2022-03-09 12:12:01 +0100
committerJon Marius Venstad <venstad@gmail.com>2022-03-09 12:12:01 +0100
commitac449aa8d3e4b22a4ae742a5dfa15e59fb641abf (patch)
tree9c7ce7af8e8dfe04348dbceb659ccb6b9b43c30a /clustercontroller-reindexer
parent7743992d1dd55b635a297ad97546d4fbfd5ce23f (diff)
Close Curator instances
Diffstat (limited to 'clustercontroller-reindexer')
-rw-r--r--clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/ReindexingCurator.java9
-rw-r--r--clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/ReindexingMaintainer.java4
-rw-r--r--clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/http/ReindexingV1ApiHandler.java6
3 files changed, 15 insertions, 4 deletions
diff --git a/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/ReindexingCurator.java b/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/ReindexingCurator.java
index 44d729c802e..94b65a01e57 100644
--- a/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/ReindexingCurator.java
+++ b/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/ReindexingCurator.java
@@ -14,6 +14,8 @@ import com.yahoo.vespa.curator.Curator;
import com.yahoo.vespa.curator.Lock;
import com.yahoo.yolean.Exceptions;
+import java.io.Closeable;
+import java.io.IOException;
import java.time.Duration;
import java.time.Instant;
import java.util.List;
@@ -29,7 +31,7 @@ import static java.util.stream.Collectors.toUnmodifiableMap;
*
* @author jonmv
*/
-public class ReindexingCurator {
+public class ReindexingCurator implements Closeable {
private static final Logger log = Logger.getLogger(ReindexingCurator.class.getName());
@@ -94,6 +96,11 @@ public class ReindexingCurator {
private Path statusPath(String clusterName) { return rootPath(clusterName).append("status"); }
private Path lockPath(String clusterName) { return rootPath(clusterName).append("lock"); }
+ @Override
+ public void close() {
+ curator.close();
+ }
+
private static class ReindexingSerializer {
diff --git a/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/ReindexingMaintainer.java b/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/ReindexingMaintainer.java
index a9642c591ea..afb491fa293 100644
--- a/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/ReindexingMaintainer.java
+++ b/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/ReindexingMaintainer.java
@@ -103,9 +103,9 @@ public class ReindexingMaintainer extends AbstractComponent {
executor.awaitTermination(5, TimeUnit.SECONDS); // Give it 5s to complete gracefully.
- curator.close(); // Close the underlying curator independently to force shutdown
+ curator.close(); // Close the underlying curator independently to force shutdown.
- if ( !executor.isShutdown() && ! executor.awaitTermination(5, TimeUnit.SECONDS))
+ if ( ! executor.isShutdown() && ! executor.awaitTermination(5, TimeUnit.SECONDS))
log.log(WARNING, "Failed to shut down reindexing within timeout");
}
catch (InterruptedException e) {
diff --git a/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/http/ReindexingV1ApiHandler.java b/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/http/ReindexingV1ApiHandler.java
index 8d9d21999d5..7816686221b 100644
--- a/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/http/ReindexingV1ApiHandler.java
+++ b/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/http/ReindexingV1ApiHandler.java
@@ -65,6 +65,11 @@ public class ReindexingV1ApiHandler extends ThreadedHttpRequestHandler {
return ErrorResponse.notFoundError("Nothing at " + request.getUri().getRawPath());
}
+ @Override
+ public void destroy() {
+ database.close();
+ }
+
HttpResponse getRoot() {
Slime slime = new Slime();
slime.setObject().setArray("resources").addObject().setString("url", "/reindexing/v1/status");
@@ -88,7 +93,6 @@ public class ReindexingV1ApiHandler extends ThreadedHttpRequestHandler {
return new SlimeJsonResponse(slime);
}
-
private static String toString(Reindexing.State state) {
switch (state) {
case READY: return "pending";