diff --git a/java/tsfile/src/main/java/org/apache/tsfile/read/reader/chunk/ChunkReader.java b/java/tsfile/src/main/java/org/apache/tsfile/read/reader/chunk/ChunkReader.java index 4f724d219..a49321b8e 100644 --- a/java/tsfile/src/main/java/org/apache/tsfile/read/reader/chunk/ChunkReader.java +++ b/java/tsfile/src/main/java/org/apache/tsfile/read/reader/chunk/ChunkReader.java @@ -167,7 +167,11 @@ public static ByteBuffer uncompressPageData( byte[] uncompressedPageData = new byte[pageHeader.getUncompressedSize()]; try { unCompressor.uncompress( - compressedPageData.array(), 0, compressedPageBodyLength, uncompressedPageData, 0); + compressedPageData.array(), + compressedPageData.arrayOffset() + compressedPageData.position(), + compressedPageBodyLength, + uncompressedPageData, + 0); } catch (Exception e) { throw new IOException( "Uncompress error! uncompress size: " @@ -178,7 +182,7 @@ public static ByteBuffer uncompressPageData( + pageHeader + e.getMessage()); } - + compressedPageData.position(compressedPageData.position() + compressedPageBodyLength); return ByteBuffer.wrap(uncompressedPageData); }