xiangfu0 commented on code in PR #17627:
URL: https://github.com/apache/pinot/pull/17627#discussion_r3057500536


##########
pinot-common/src/main/java/org/apache/pinot/common/messages/SegmentReloadMessage.java:
##########
@@ -75,6 +86,22 @@ public SegmentReloadMessage(String tableNameWithType, 
@Nullable List<String> seg
     }
   }
 
+  /**
+   * This msg asks server to reload a list of specified segments with an 
explicit reload job id.
+   *
+   * @param tableNameWithType the table where the segments are from.
+   * @param segmentNames      a list of specified segments to reload, or null 
for all segments.
+   * @param forceDownload     whether to download segments from deep store 
when reloading.
+   * @param reloadJobId       reload job id to associate with the reload 
operation
+   */
+  public SegmentReloadMessage(String tableNameWithType, @Nullable List<String> 
segmentNames, boolean forceDownload,

Review Comment:
   Good point. The original reason the instanceToSegmentsMap path used 
per-instance job IDs was that each server got its own SegmentReloadMessage with 
a unique Helix message ID — there was no concept of a shared job ID before this 
PR. The time-range feature introduced the shared UUID design, which creates a 
cleaner single logical job per operation.
   
   I've unified the two paths: reloadSegmentsForTable now generates a single 
UUID before dispatching per-instance messages (same as the time-range path), 
and stores one ZK entry covering all segments. The reloadAllSegments 
(broadcast) and reloadSegment (single-segment) paths already use a single Helix 
message, so they inherently have one job ID — no change needed there.
   
   The 3-arg reloadSegments overload (which delegated to the 4-arg one with 
null) has also been removed since it's no longer needed.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


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

Reply via email to