Github user xuchuanyin commented on a diff in the pull request: https://github.com/apache/carbondata/pull/2565#discussion_r206367642 --- Diff: core/src/main/java/org/apache/carbondata/core/indexstore/blockletindex/BlockDataMap.java --- @@ -318,13 +318,22 @@ private DataMapRowImpl loadBlockMetaInfo(CarbonRowSchema[] taskSummarySchema, blockMinValues, blockMaxValues); blockletCountInEachBlock.add(totalBlockletsInOneBlock); } - byte[] blockletCount = ArrayUtils - .toPrimitive(blockletCountInEachBlock.toArray(new Byte[blockletCountInEachBlock.size()])); + byte[] blockletCount = convertRowCountFromShortToByteArray(blockletCountInEachBlock); // blocklet count index is the last index summaryRow.setByteArray(blockletCount, taskSummarySchema.length - 1); return summaryRow; } + private byte[] convertRowCountFromShortToByteArray(List<Short> blockletCountInEachBlock) { --- End diff -- because we are using offheap store, which needs to store the bytes.
---