akashrn5 commented on a change in pull request #3986: URL: https://github.com/apache/carbondata/pull/3986#discussion_r509221753
########## File path: processing/src/main/java/org/apache/carbondata/processing/merger/CarbonDataMergerUtil.java ########## @@ -1039,22 +1039,24 @@ private static boolean isSegmentValid(LoadMetadataDetails seg) { if (CompactionType.IUD_DELETE_DELTA == compactionTypeIUD) { int numberDeleteDeltaFilesThreshold = CarbonProperties.getInstance().getNoDeleteDeltaFilesThresholdForIUDCompaction(); - List<Segment> deleteSegments = new ArrayList<>(); - for (Segment seg : segments) { - if (checkDeleteDeltaFilesInSeg(seg, segmentUpdateStatusManager, - numberDeleteDeltaFilesThreshold)) { - deleteSegments.add(seg); + + // firstly find the valid segments which are updated from SegmentUpdateDetails, + // in order to reduce the segment list for behind traversal + List<String> segmentsPresentInSegmentUpdateDetails = new ArrayList<>(); Review comment: you dont need to delete the old code, its already going inside logic if the `updateDetails `are present, So you can just put the `getDeleteDeltaFilesInSeg` method inside `checkDeleteDeltaFilesInSeg` and no need to completely modify `getSegListIUDCompactionQualified`, it will be more clean. ---------------------------------------------------------------- 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org