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

Sanjay Radia commented on HADOOP-6223:
--------------------------------------

Migration strategy:
Two options here:
# Transition by delegating from FileSystem to the new AbstractFileSystem 
(possibly over one more more releases)
** Add FileContext; FileContext calls FileSystem
** Deprecate FileSystem
** Add AbstractFileSystem
** Migrate each FS-impl to AbstractFileSystem and use a FileSystem delegator to 
delegate FileSystem calls to AbstractFileSystem so that AFS-impl is called. 
This step may occur over one or more releases.
** Change FileContext to call AbstractFileSystem
** Remove FileSystem (say after 1 or 2 releases)
# Transition by delegating from AbstractFileSystem to the new FileSystem 
(possibly over one more more releases)
** Add FileContext and AbstractFileSystem; FileContext calls AbsrtactFileSystem
** AbstractFileSystem delegates to FileSystem for each AFS-impl that has not 
yet been implemented
** Migrate each FS-Impl to AbstractFileSystem -the delegator will no longer 
call FS-Impl, instead AFS_impl will be called directly. This step may occur 
over one or more releases.
** Remove FileSystem (say after 1 or 2 releases)

Originally I was planning to use option 1 and hence my patch for FileContext 
calls FileSystem.
I am seriously considering going with option 2.

> New improved FileSystem interface for those implementing new files systems.
> ---------------------------------------------------------------------------
>
>                 Key: HADOOP-6223
>                 URL: https://issues.apache.org/jira/browse/HADOOP-6223
>             Project: Hadoop Common
>          Issue Type: Sub-task
>            Reporter: Sanjay Radia
>            Assignee: Sanjay Radia
>
> The FileContext API (HADOOP-4952) provides an improved interface for the 
> application writer.
> This lets us simplify the FileSystem API since it will no longer need to deal 
> with notions of default filesystem [ / ],  wd, and config
> defaults for blocksize, replication factor etc. Further it will not need the 
> many overloaded methods for create() and open() since
> the FileContext API provides that convenience.
> The FileSystem API can be simplified and can now be restricted to those 
> implementing new file systems.
> This jira proposes that we create new file system API,  and deprecate 
> FileSystem API after a few releases.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to