diff --git a/code/index/index-reverse/java/nu/marginalia/index/construction/prio/PrioDocIdsTransformer.java b/code/index/index-reverse/java/nu/marginalia/index/construction/prio/PrioDocIdsTransformer.java index 4ecb1cb3..72be8c17 100644 --- a/code/index/index-reverse/java/nu/marginalia/index/construction/prio/PrioDocIdsTransformer.java +++ b/code/index/index-reverse/java/nu/marginalia/index/construction/prio/PrioDocIdsTransformer.java @@ -142,8 +142,10 @@ public class PrioDocIdsTransformer implements LongArrayTransformations.LongIOTra @Override public void close() throws IOException { writeBuffer.flip(); - int written = writeChannel.write(writeBuffer, writeOffsetB); - writeOffsetB += written; + while (writeBuffer.hasRemaining()) { + int written = writeChannel.write(writeBuffer, writeOffsetB); + writeOffsetB += written; + } writeBuffer.clear(); } }