jackjlli commented on a change in pull request #8110: URL: https://github.com/apache/pinot/pull/8110#discussion_r798047773
########## File path: pinot-controller/src/main/java/org/apache/pinot/controller/api/upload/ZKOperator.java ########## @@ -222,8 +222,16 @@ private void checkCRC(HttpHeaders headers, String offlineTableName, String segme private void processNewSegment(SegmentMetadata segmentMetadata, URI finalSegmentLocationURI, File currentSegmentLocation, String zkDownloadURI, HttpHeaders headers, String crypter, String tableNameWithType, - String segmentName, boolean moveSegmentToFinalLocation) + String segmentName, boolean moveSegmentToFinalLocation, boolean enableParallelPushProtection) throws Exception { + SegmentZKMetadata newSegmentZKMetadata = _pinotHelixResourceManager + .constructZkMetadataForNewSegment(tableNameWithType, segmentMetadata, zkDownloadURI, crypter, + enableParallelPushProtection); + if (!_pinotHelixResourceManager.updateZkMetadata(tableNameWithType, newSegmentZKMetadata)) { Review comment: Since it's to process new segment, why not update the Zk metadata with an expected version like `0` here? E.g., if two controllers are trying to upload for the same new segment, then only 1 controller should succeed with the segment and the other controller should fail. -- 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: commits-unsubscr...@pinot.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For additional commands, e-mail: commits-h...@pinot.apache.org