You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Steve Loughran (JIRA)" <ji...@apache.org> on 2016/12/02 13:54:58 UTC

[jira] [Commented] (HADOOP-13856) FileSystem.rename(final Path src, final Path dst, final Rename... options) to become public; specified, tested

    [ https://issues.apache.org/jira/browse/HADOOP-13856?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15715183#comment-15715183 ] 

Steve Loughran commented on HADOOP-13856:
-----------------------------------------

Requires

# base method to become public
# all subclassed implementations to become public (HDFS, ADL (Hadoop 3)).
# FS spec to cover it. As its explicitly a more consistent rename(), this should be easier.
# Add contract tests.
# ViewFS to relay it

Filesystems which currently swallow exceptions in rename (S3A, WASB) can expose the IOExceptions instead; this can take a bit of refactoring similar to HADOOP-13823 and S3A; we may even want to make that {{RenameFailedException}} with its return code something inside {{hadoop-common/org.apache.hadoop.fs}}



> FileSystem.rename(final Path src, final Path dst, final Rename... options) to become public; specified, tested
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: HADOOP-13856
>                 URL: https://issues.apache.org/jira/browse/HADOOP-13856
>             Project: Hadoop Common
>          Issue Type: Improvement
>          Components: fs/s3
>    Affects Versions: 2.8.0
>            Reporter: Steve Loughran
>
> A lot of code within Hadoop (e.g. committers, filesystem) and downstream (Hive, spark), don't know what to do when rename() returns false, as it can be a sign of nothing important, or something major.
> In contrast, {{rename(final Path src, final Path dst, final Rename... options)}} has stricter semantics and throws up all exceptions to be caught or relayed by callers. Yet it cannot be used as its scoped at {{protected}} and tagged as {{@Deprected}}. 
> If it was made public then it could be used in committers and elsewhere; if we backport the making of it public, then life will be even better



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-issues-help@hadoop.apache.org