From a85bb73c479b9e58cb7a672cffc4feff02546685 Mon Sep 17 00:00:00 2001 From: Kaikai Li <3408208097@qq.com> Date: Tue, 16 Apr 2024 21:45:30 +0800 Subject: [PATCH 1/2] Fix cast exception when running peon tasks(#16271) --- .../org/apache/druid/indexing/overlord/ForkingTaskRunner.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/indexing-service/src/main/java/org/apache/druid/indexing/overlord/ForkingTaskRunner.java b/indexing-service/src/main/java/org/apache/druid/indexing/overlord/ForkingTaskRunner.java index 83451c490a80..6a5f1be5981f 100644 --- a/indexing-service/src/main/java/org/apache/druid/indexing/overlord/ForkingTaskRunner.java +++ b/indexing-service/src/main/java/org/apache/druid/indexing/overlord/ForkingTaskRunner.java @@ -314,9 +314,10 @@ public TaskStatus call() if (context != null) { for (String propName : context.keySet()) { if (propName.startsWith(CHILD_PROPERTY_PREFIX)) { + Object contextValue = task.getContextValue(propName); command.addSystemProperty( propName.substring(CHILD_PROPERTY_PREFIX.length()), - task.getContextValue(propName) + contextValue == null ? null : contextValue.toString() ); } } From 8c7c4e4ec0d816523256ac86109dad35f9b7b031 Mon Sep 17 00:00:00 2001 From: Kaikai Li <3408208097@qq.com> Date: Wed, 1 Jan 2025 18:45:39 +0800 Subject: [PATCH 2/2] Fix the bug that should retry when failed to pause realtime task while task is publishing (#11515) --- .../src/main/java/org/apache/druid/rpc/StandardRetryPolicy.java | 1 + 1 file changed, 1 insertion(+) diff --git a/server/src/main/java/org/apache/druid/rpc/StandardRetryPolicy.java b/server/src/main/java/org/apache/druid/rpc/StandardRetryPolicy.java index 71097ef6d890..4c1f1a81a4c5 100644 --- a/server/src/main/java/org/apache/druid/rpc/StandardRetryPolicy.java +++ b/server/src/main/java/org/apache/druid/rpc/StandardRetryPolicy.java @@ -141,6 +141,7 @@ public boolean retryHttpResponse(final HttpResponse response) return code == HttpResponseStatus.BAD_GATEWAY.getCode() || code == HttpResponseStatus.SERVICE_UNAVAILABLE.getCode() || code == HttpResponseStatus.GATEWAY_TIMEOUT.getCode() + || code == HttpResponseStatus.CONFLICT.getCode() // Technically shouldn't retry this last one, but servers sometimes return HTTP 500 for retryable errors. || code == HttpResponseStatus.INTERNAL_SERVER_ERROR.getCode();