abhishekbafna commented on code in PR #16249: URL: https://github.com/apache/pinot/pull/16249#discussion_r2185135111
########## pinot-plugins/pinot-minion-tasks/pinot-minion-builtin-tasks/src/main/java/org/apache/pinot/plugin/minion/tasks/BaseMultipleSegmentsConversionExecutor.java: ########## @@ -195,30 +201,20 @@ public List<SegmentConversionResult> executeTask(PinotTaskConfig pinotTaskConfig File tempDataDir = new File(new File(MINION_CONTEXT.getDataDir(), taskType), "tmp-" + UUID.randomUUID()); Preconditions.checkState(tempDataDir.mkdirs()); try { - List<File> inputSegmentDirs = new ArrayList<>(); - int numRecords = 0; - - for (int i = 0; i < downloadURLs.length; i++) { - String segmentName = segmentNames[i]; - // Download and decompress the segment file - _eventObserver.notifyProgress(_pinotTaskConfig, "Downloading and decompressing segment from: " + downloadURLs[i] - + " (" + (i + 1) + " out of " + downloadURLs.length + ")"); - File indexDir; - try { - indexDir = downloadSegmentToLocalAndUntar(tableNameWithType, segmentName, downloadURLs[i], taskType, - tempDataDir, "_" + i); - } catch (Exception e) { - LOGGER.error("Failed to download segment from download url: {}", downloadURLs[i], e); - _minionMetrics.addMeteredTableValue(tableNameWithType, MinionMeter.SEGMENT_DOWNLOAD_FAIL_COUNT, 1L); - _eventObserver.notifyTaskError(_pinotTaskConfig, e); - throw e; + AtomicInteger recordCount = new AtomicInteger(0); + List<File> inputSegmentDirs = Collections.synchronizedList(new ArrayList<>(downloadURLs.length)); + int nThreads = Integer.parseInt(taskConfigs.getOrDefault(MinionConstants.SEGMENT_DOWNLOAD_THREAD_POOL_SIZE, Review Comment: > would it be better to use minionConf here rather than task config ? if its part of task config, we will have to modify all task configs for all tables to make use of this feature. This is correct but on that other hand task level would allow for different config for different tasks. Provides much more control than a single global config. -- 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