HADOOP-7997. SequenceFile.createWriter(...createParent...) no longer works on existing file. Contributed by Gregory Chanan
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1236456 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
12289efa2b
commit
c5caed914d
|
@ -292,6 +292,9 @@ Release 0.23.1 - Unreleased
|
||||||
HADOOP-7981. Improve documentation for org.apache.hadoop.io.compress.
|
HADOOP-7981. Improve documentation for org.apache.hadoop.io.compress.
|
||||||
Decompressor.getRemaining (Jonathan Eagles via mahadev)
|
Decompressor.getRemaining (Jonathan Eagles via mahadev)
|
||||||
|
|
||||||
|
HADOOP-7997. SequenceFile.createWriter(...createParent...) no
|
||||||
|
longer works on existing file. (Gregory Chanan via eli)
|
||||||
|
|
||||||
Release 0.23.0 - 2011-11-01
|
Release 0.23.0 - 2011-11-01
|
||||||
|
|
||||||
INCOMPATIBLE CHANGES
|
INCOMPATIBLE CHANGES
|
||||||
|
|
|
@ -467,7 +467,7 @@ public class SequenceFile {
|
||||||
Metadata metadata) throws IOException {
|
Metadata metadata) throws IOException {
|
||||||
return createWriter(FileContext.getFileContext(fs.getUri(), conf),
|
return createWriter(FileContext.getFileContext(fs.getUri(), conf),
|
||||||
conf, name, keyClass, valClass, compressionType, codec,
|
conf, name, keyClass, valClass, compressionType, codec,
|
||||||
metadata, EnumSet.of(CreateFlag.CREATE),
|
metadata, EnumSet.of(CreateFlag.CREATE,CreateFlag.OVERWRITE),
|
||||||
CreateOpts.bufferSize(bufferSize),
|
CreateOpts.bufferSize(bufferSize),
|
||||||
createParent ? CreateOpts.createParent()
|
createParent ? CreateOpts.createParent()
|
||||||
: CreateOpts.donotCreateParent(),
|
: CreateOpts.donotCreateParent(),
|
||||||
|
|
|
@ -517,6 +517,23 @@ public class TestSequenceFile extends TestCase {
|
||||||
assertTrue("InputStream for " + path + " should have been closed.", openedFile[0].isClosed());
|
assertTrue("InputStream for " + path + " should have been closed.", openedFile[0].isClosed());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test that makes sure createWriter succeeds on a file that was
|
||||||
|
* already created
|
||||||
|
* @throws IOException
|
||||||
|
*/
|
||||||
|
public void testCreateWriterOnExistingFile() throws IOException {
|
||||||
|
Configuration conf = new Configuration();
|
||||||
|
FileSystem fs = FileSystem.getLocal(conf);
|
||||||
|
Path name = new Path(new Path(System.getProperty("test.build.data","."),
|
||||||
|
"createWriterOnExistingFile") , "file");
|
||||||
|
|
||||||
|
fs.create(name);
|
||||||
|
SequenceFile.createWriter(fs, conf, name, RandomDatum.class,
|
||||||
|
RandomDatum.class, 512, (short) 1, 4096, false,
|
||||||
|
CompressionType.NONE, null, new Metadata());
|
||||||
|
}
|
||||||
|
|
||||||
public void testRecursiveSeqFileCreate() throws IOException {
|
public void testRecursiveSeqFileCreate() throws IOException {
|
||||||
Configuration conf = new Configuration();
|
Configuration conf = new Configuration();
|
||||||
FileSystem fs = FileSystem.getLocal(conf);
|
FileSystem fs = FileSystem.getLocal(conf);
|
||||||
|
|
Loading…
Reference in New Issue