8000 KAFKA-17181 Replace fileChannel.write with Utils.writeFully to preven… · Python-Repository-Hub/kafka@65786fe · GitHub
[go: up one dir, main page]

Skip to content

Commit 65786fe

Browse files
authored
KAFKA-17181 Replace fileChannel.write with Utils.writeFully to prevent partial write (apache#16707)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
1 parent c3d552d commit 65786fe

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

storage/src/main/java/org/apache/kafka/storage/internals/log/ProducerStateManager.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import org.apache.kafka.common.utils.Crc32C;
2525
import org.apache.kafka.common.utils.LogContext;
2626
import org.apache.kafka.common.utils.Time;
27+
import org.apache.kafka.common.utils.Utils;
2728
import org.apache.kafka.server.log.remote.metadata.storage.generated.ProducerSnapshot;
2829

2930
import org.slf4j.Logger;
@@ -684,7 +685,7 @@ public static void writeSnapshot(File file, Map<Long, ProducerStateEntry> entrie
684685
ByteUtils.writeUnsignedInt(buffer, CRC_OFFSET, crc);
685686

686687
try (FileChannel fileChannel = FileChannel.open(file.toPath(), StandardOpenOption.CREATE, StandardOpenOption.WRITE)) {
687-
fileChannel.write(buffer);
688+
Utils.writeFully(fileChannel, buffer);
688689
if (sync) {
689690
fileChannel.force(true);
690691
}

0 commit comments

Comments
 (0)
0