[
https://issues.apache.org/jira/browse/HADOOP-9565?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Thomas Demoor updated HADOOP-9565:
----------------------------------
Attachment: HADOOP-9565-004.patch
004 introduces an objectStore-aware FileOutputCommitter: it writes directly to
the outputPath if in-progress/failed writes are not visible on the object store.
[~jnp], [~anu], [~cnauroth] and [~jghoman]: this is the approach I think
HDFS-7240 can easily use this to avoid the "rename issue".
The implementation optios were constrained by the fact that FileOutputCommitter
has a stable public interface:
* implementing the changes by subclassing was not possible
* the public / protected methods could not be changed. Often they are also
static (for use in MR1), further limiting options.
Some smaller stylistic changes (checkstyle, etc.) to the code in 003.patch
> Add a Blobstore interface to add to blobstore FileSystems
> ---------------------------------------------------------
>
> Key: HADOOP-9565
> URL: https://issues.apache.org/jira/browse/HADOOP-9565
> Project: Hadoop Common
> Issue Type: Improvement
> Components: fs, fs/s3, fs/swift
> Affects Versions: 2.6.0
> Reporter: Steve Loughran
> Assignee: Steve Loughran
> Labels: BB2015-05-TBR
> Attachments: HADOOP-9565-001.patch, HADOOP-9565-002.patch,
> HADOOP-9565-003.patch, HADOOP-9565-004.patch
>
>
> We can make the fact that some {{FileSystem}} implementations are really
> blobstores, with different atomicity and consistency guarantees, by adding a
> {{Blobstore}} interface to add to them.
> This could also be a place to add a {{Copy(Path,Path)}} method, assuming that
> all blobstores implement at server-side copy operation as a substitute for
> rename.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)