question: public void addRow ( Object [ ] row ) throws CarbonSortKeyAndGroupByException { int currentSize = entryCount ; if ( sortBufferSize == currentSize ) { LOGGER . debug ( "************ Writing to temp file ********** " ) ; File [ ] fileList ; if ( procFiles . size ( ) >= numberOfIntermediateFileToBeMerged ) { synchronized ( lockObject ) { fileList = procFiles . toArray ( new File [ procFiles . size ( ) ] ) ; this . procFiles = new ArrayList < File > ( 1 ) ; } LOGGER . debug ( "Sumitting request for intermediate merging no of files: " + fileList . length ) ; startIntermediateMerging ( fileList ) ; } Object [ ] [ ] recordHolderListLocal = recordHolderList ; try { semaphore . acquire ( ) ; dataSorterAndWriterExecutorService . submit ( new DataSorterAndWriter ( recordHolderListLocal ) ) ; } catch ( InterruptedException e ) { LOGGER . error ( "exception occurred while trying to acquire a semaphore lock: " + e . getMessage ( ) ) ; throw new CarbonSortKeyAndGroupByException ( e . getMessage ( ) ) ; } this . recordHolderList = new Object [ this . sortBufferSize ] [ ] ; this . entryCount = 0 ; } recordHolderList [ entryCount ++ ] = row ; }
target:  This method will be used to add new row