From 869d50386519aa7e6d5bc85cfe3f090943268d2e Mon Sep 17 00:00:00 2001 From: Muralidhar Basani Date: Thu, 26 Mar 2026 22:32:00 +0100 Subject: [PATCH] Fix LazyDownConversionRecordsTest in using zlib-ng Made-with: Cursor --- .../kafka/common/record/LazyDownConversionRecordsTest.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/clients/src/test/java/org/apache/kafka/common/record/LazyDownConversionRecordsTest.java b/clients/src/test/java/org/apache/kafka/common/record/LazyDownConversionRecordsTest.java index 59ac60e3a80df..33ed91f26ff5c 100644 --- a/clients/src/test/java/org/apache/kafka/common/record/LazyDownConversionRecordsTest.java +++ b/clients/src/test/java/org/apache/kafka/common/record/LazyDownConversionRecordsTest.java @@ -154,7 +154,8 @@ private static MemoryRecords convertRecords(MemoryRecords recordsToConvert, byte ByteBuffer convertedRecordsBuffer; try (TransferableChannel channel = toTransferableChannel(FileChannel.open(outputFile.toPath(), StandardOpenOption.READ, StandardOpenOption.WRITE))) { int written = 0; - while (written < bytesToConvert) written += lazySend.writeTo(channel, written, bytesToConvert - written); + // Use bytesToConvert as remaining to avoid truncating batches when V1 is larger than V2 (e.g. zlib-ng) + while (written < bytesToConvert) written += lazySend.writeTo(channel, written, bytesToConvert); try (FileRecords convertedRecords = FileRecords.open(outputFile, true, written, false)) { convertedRecordsBuffer = ByteBuffer.allocate(convertedRecords.sizeInBytes()); convertedRecords.readInto(convertedRecordsBuffer, 0);