You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@druid.apache.org by ab...@apache.org on 2023/03/29 07:57:20 UTC
[druid] branch master updated: Do not print error message if pod not found when getting task location (#13971)
This is an automated email from the ASF dual-hosted git repository.
abhishek pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/druid.git
The following commit(s) were added to refs/heads/master by this push:
new 488f1d8363 Do not print error message if pod not found when getting task location (#13971)
488f1d8363 is described below
commit 488f1d83634e002c52ad9b7ff8c4cbb00efb4937
Author: Nicholas Lippis <ni...@imply.io>
AuthorDate: Wed Mar 29 03:57:06 2023 -0400
Do not print error message if pod not found when getting task location (#13971)
Do not print error message if pod not found when getting task location
---
.../apache/druid/k8s/overlord/KubernetesTaskRunner.java | 5 +++++
.../druid/k8s/overlord/KubernetesTaskRunnerTest.java | 15 +++++++++++++++
2 files changed, 20 insertions(+)
diff --git a/extensions-contrib/kubernetes-overlord-extensions/src/main/java/org/apache/druid/k8s/overlord/KubernetesTaskRunner.java b/extensions-contrib/kubernetes-overlord-extensions/src/main/java/org/apache/druid/k8s/overlord/KubernetesTaskRunner.java
index ae2dbbb885..7f9e92a9fa 100644
--- a/extensions-contrib/kubernetes-overlord-extensions/src/main/java/org/apache/druid/k8s/overlord/KubernetesTaskRunner.java
+++ b/extensions-contrib/kubernetes-overlord-extensions/src/main/java/org/apache/druid/k8s/overlord/KubernetesTaskRunner.java
@@ -50,6 +50,7 @@ import org.apache.druid.k8s.overlord.common.DruidK8sConstants;
import org.apache.druid.k8s.overlord.common.JobResponse;
import org.apache.druid.k8s.overlord.common.K8sTaskId;
import org.apache.druid.k8s.overlord.common.KubernetesPeonClient;
+import org.apache.druid.k8s.overlord.common.KubernetesResourceNotFoundException;
import org.apache.druid.k8s.overlord.common.PeonPhase;
import org.apache.druid.k8s.overlord.common.TaskAdapter;
import org.apache.druid.tasklogs.TaskLogPusher;
@@ -469,6 +470,10 @@ public class KubernetesTaskRunner implements TaskLogStreamer, TaskRunner
tlsEnabled
);
}
+ catch (KubernetesResourceNotFoundException e) {
+ log.debug(e, "Error getting task location for task %s", taskId);
+ return TaskLocation.unknown();
+ }
catch (Exception e) {
log.error(e, "Error getting task location for task %s", taskId);
return TaskLocation.unknown();
diff --git a/extensions-contrib/kubernetes-overlord-extensions/src/test/java/org/apache/druid/k8s/overlord/KubernetesTaskRunnerTest.java b/extensions-contrib/kubernetes-overlord-extensions/src/test/java/org/apache/druid/k8s/overlord/KubernetesTaskRunnerTest.java
index 6914f79d13..7045abb9e6 100644
--- a/extensions-contrib/kubernetes-overlord-extensions/src/test/java/org/apache/druid/k8s/overlord/KubernetesTaskRunnerTest.java
+++ b/extensions-contrib/kubernetes-overlord-extensions/src/test/java/org/apache/druid/k8s/overlord/KubernetesTaskRunnerTest.java
@@ -52,6 +52,7 @@ import org.apache.druid.k8s.overlord.common.JobResponse;
import org.apache.druid.k8s.overlord.common.K8sTaskAdapter;
import org.apache.druid.k8s.overlord.common.K8sTaskId;
import org.apache.druid.k8s.overlord.common.KubernetesPeonClient;
+import org.apache.druid.k8s.overlord.common.KubernetesResourceNotFoundException;
import org.apache.druid.k8s.overlord.common.PeonPhase;
import org.apache.druid.server.DruidNode;
import org.apache.druid.server.log.StartupLoggingConfig;
@@ -427,6 +428,20 @@ public class KubernetesTaskRunnerTest
assertEquals(TaskLocation.create("tweak", DruidK8sConstants.PORT, DruidK8sConstants.TLS_PORT, false), realLocation);
}
+ @Test
+ public void testWorkItemGetLocation_withKubernetesResourceNotFoundException_returnsUnknownLocation()
+ {
+ KubernetesPeonClient client = mock(KubernetesPeonClient.class);
+
+ when(client.getMainJobPod(any())).thenThrow(KubernetesResourceNotFoundException.class);
+
+ Task task = mock(Task.class);
+ when(task.getId()).thenReturn("id");
+ KubernetesTaskRunner.K8sWorkItem k8sWorkItem = new KubernetesTaskRunner.K8sWorkItem(client, task, null);
+ TaskLocation location = k8sWorkItem.getLocation();
+ assertEquals(TaskLocation.unknown(), location);
+ }
+
private Task makeTask()
{
return new TestableNoopTask(
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@druid.apache.org
For additional commands, e-mail: commits-help@druid.apache.org