This is an automated email from the ASF dual-hosted git repository.

KKcorps pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pinot.git


The following commit(s) were added to refs/heads/master by this push:
     new 8d90c47af8f Fix subtask worker progress API failing on null worker key 
(#20210)
8d90c47af8f is described below

commit 8d90c47af8fe64b8156df54987d6346a1fce573a
Author: Manak Bisht <[email protected]>
AuthorDate: Wed Nov 11 10:27:09 2026 +0530

    Fix subtask worker progress API failing on null worker key (#20210)
---
 .../controller/helix/core/minion/PinotHelixTaskResourceManager.java   | 4 +++-
 .../helix/core/minion/PinotHelixTaskResourceManagerTest.java          | 2 +-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git 
a/pinot-controller/src/main/java/org/apache/pinot/controller/helix/core/minion/PinotHelixTaskResourceManager.java
 
b/pinot-controller/src/main/java/org/apache/pinot/controller/helix/core/minion/PinotHelixTaskResourceManager.java
index f6a4295b8ce..bc512171f01 100644
--- 
a/pinot-controller/src/main/java/org/apache/pinot/controller/helix/core/minion/PinotHelixTaskResourceManager.java
+++ 
b/pinot-controller/src/main/java/org/apache/pinot/controller/helix/core/minion/PinotHelixTaskResourceManager.java
@@ -911,7 +911,9 @@ public class PinotHelixTaskResourceManager {
       String worker = entry.getKey();
       String resp = entry.getValue();
       LOGGER.debug("Got resp: {} from worker: {}", resp, worker);
-      
minionWorkerIdSubtaskProgressMap.put(minionWorkerUrlToWorkerIdMap.get(worker),
+      // Response keys are "<url>__<count>" when multiRequestPerServer is true
+      minionWorkerIdSubtaskProgressMap.put(
+          
minionWorkerUrlToWorkerIdMap.get(StringUtils.substringBeforeLast(worker, "__")),
           JsonUtils.stringToObject(resp, Map.class));
     }
     if (serviceResponse._failedResponseCount > 0) {
diff --git 
a/pinot-controller/src/test/java/org/apache/pinot/controller/helix/core/minion/PinotHelixTaskResourceManagerTest.java
 
b/pinot-controller/src/test/java/org/apache/pinot/controller/helix/core/minion/PinotHelixTaskResourceManagerTest.java
index 3018ac5f365..2ed398a5169 100644
--- 
a/pinot-controller/src/test/java/org/apache/pinot/controller/helix/core/minion/PinotHelixTaskResourceManagerTest.java
+++ 
b/pinot-controller/src/test/java/org/apache/pinot/controller/helix/core/minion/PinotHelixTaskResourceManagerTest.java
@@ -285,7 +285,7 @@ public class PinotHelixTaskResourceManagerTest {
       // Notice that for testing purpose, we map subtask names to empty 
strings. In reality, subtask names will be
       // mapped to jsonized org.apache.pinot.minion.event.MinionEventObserver
       httpResp._httpResponses.put(
-          
String.format("%s/tasks/subtask/state/progress?subTaskState=IN_PROGRESS", 
workerEndpoint),
+          
String.format("%s/tasks/subtask/state/progress?subTaskState=IN_PROGRESS__1", 
workerEndpoint),
           JsonUtils.objectToString(Map.of(subtaskIds[2 * i], "", subtaskIds[2 
* i + 1], "")));
     }
     httpResp._failedResponseCount = 1;


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to