From e9c23bf376d2dff0b27dbfeff0e34fb5c4511094 Mon Sep 17 00:00:00 2001 From: Gian Merlino Date: Wed, 2 Mar 2016 17:31:30 -0800 Subject: [PATCH] OverlordResource: Use getZkWorkers on RemoteTaskRunner. Restores old behavior of this api, from before #2249 when getWorkers returned ZkWorkers. --- .../io/druid/indexing/overlord/http/OverlordResource.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/indexing-service/src/main/java/io/druid/indexing/overlord/http/OverlordResource.java b/indexing-service/src/main/java/io/druid/indexing/overlord/http/OverlordResource.java index 59c2ae307caa..959193223854 100644 --- a/indexing-service/src/main/java/io/druid/indexing/overlord/http/OverlordResource.java +++ b/indexing-service/src/main/java/io/druid/indexing/overlord/http/OverlordResource.java @@ -45,6 +45,7 @@ import io.druid.indexing.overlord.TaskRunner; import io.druid.indexing.overlord.TaskRunnerWorkItem; import io.druid.indexing.overlord.TaskStorageQueryAdapter; +import io.druid.indexing.overlord.WorkerTaskRunner; import io.druid.indexing.overlord.autoscaling.ScalingStats; import io.druid.indexing.overlord.setup.WorkerBehaviorConfig; import io.druid.metadata.EntryExistsException; @@ -416,7 +417,10 @@ public Response getWorkers() public Response apply(TaskRunner taskRunner) { if (taskRunner instanceof RemoteTaskRunner) { - return Response.ok(((RemoteTaskRunner) taskRunner).getWorkers()).build(); + // Use getZkWorkers instead of getWorkers, as they return richer details (like the list of running tasks) + return Response.ok(((RemoteTaskRunner) taskRunner).getZkWorkers()).build(); + } else if (taskRunner instanceof WorkerTaskRunner) { + return Response.ok(((WorkerTaskRunner) taskRunner).getWorkers()).build(); } else { log.debug( "Task runner [%s] of type [%s] does not support listing workers",