Hi yixu2001 We have tried same code which is given in the below mail but not able to reproduce the same.
<http://apache-carbondata-dev-mailing-list-archive.1130556.n5.nabble.com/file/t203/loop_count.jpg> Please find some of the analysis points 1. As per your Exception ArrayIndexOutOfBoundsException Error is because deleteDelta file is 0 size . blkLocations is empty because FileSystem.getFileBlockLocations has check if file lenth is <=size of file then return empty BlockLocation @Override public String[] getLocations() throws IOException { BlockLocation[] blkLocations; if (fileStatus instanceof LocatedFileStatus) { blkLocations = ((LocatedFileStatus)fileStatus).getBlockLocations(); } else { FileSystem fs = fileStatus.getPath().getFileSystem(FileFactory.getConfiguration()); blkLocations = fs.getFileBlockLocations(fileStatus.getPath(), 0L, fileStatus.getLen()); } return blkLocations[0].getHosts(); } <http://apache-carbondata-dev-mailing-list-archive.1130556.n5.nabble.com/file/t203/FileSystem.jpg> zero byte deletedelta should not be written , i have tried scenario like no records for update/delete but delta file with 0 byte is not written . Can you please confirm below things a. Is any task failure is observed in SparkUI. b. Update Query which resulted 0 byte delta file ( you can add this check in your code ). c. Can we give jar having logs ( print the logs about how many records are got delete /update in each update/delete operation) ? Thanks Babu -- Sent from: http://apache-carbondata-dev-mailing-list-archive.1130556.n5.nabble.com/