Skip to content

Commit 0bc5aad

Browse files
authored
RATIS-2260. AtomicFileOutputStream should truncate temp file (#1237)
1 parent 3947cf3 commit 0bc5aad

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

ratis-common/src/main/java/org/apache/ratis/util/AtomicFileOutputStream.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,17 @@
1717
*/
1818
package org.apache.ratis.util;
1919

20+
import static java.nio.file.StandardOpenOption.CREATE;
21+
import static java.nio.file.StandardOpenOption.TRUNCATE_EXISTING;
22+
import static java.nio.file.StandardOpenOption.WRITE;
23+
2024
import org.slf4j.Logger;
2125
import org.slf4j.LoggerFactory;
2226

2327
import java.io.File;
2428
import java.io.FilterOutputStream;
2529
import java.io.IOException;
2630
import java.nio.file.StandardCopyOption;
27-
import java.nio.file.StandardOpenOption;
2831
import java.util.concurrent.atomic.AtomicBoolean;
2932

3033
/**
@@ -60,7 +63,7 @@ public AtomicFileOutputStream(File outFile) throws IOException {
6063
}
6164

6265
public AtomicFileOutputStream(File outFile, File tmpFile) throws IOException {
63-
super(FileUtils.newOutputStreamForceAtClose(tmpFile, StandardOpenOption.CREATE, StandardOpenOption.WRITE));
66+
super(FileUtils.newOutputStreamForceAtClose(tmpFile, CREATE, TRUNCATE_EXISTING, WRITE));
6467
this.outFile = outFile.getAbsoluteFile();
6568
this.tmpFile = tmpFile.getAbsoluteFile();
6669
}

0 commit comments

Comments
 (0)