Github user mohammadshahidkhan commented on a diff in the pull request: https://github.com/apache/carbondata/pull/2588#discussion_r207162716 --- Diff: processing/src/main/java/org/apache/carbondata/processing/loading/sort/unsafe/merger/UnsafeIntermediateMerger.java --- @@ -111,18 +108,15 @@ public void addFileToMerge(File sortTempFile) { } public void startFileMergingIfPossible() { - File[] fileList = null; - synchronized (lockObject) { - if (procFiles.size() >= parameters.getNumberOfIntermediateFileToBeMerged()) { + File[] fileList; + if (procFiles.size() >= parameters.getNumberOfIntermediateFileToBeMerged()) { --- End diff -- @kumarvishal09 Please check once, in my view here double check locking is needed, other wise the thread waiting to acquire the lock, will enter the synchronized block and will end up doing intermediate merging with **0 or less than configured number of files "carbon.sort.intermediate.files.limit**".
---