hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Enis Soztutar (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-7806) Isolate the FileSystem calls
Date Wed, 06 Mar 2013 03:12:15 GMT

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

Enis Soztutar commented on HBASE-7806:
--------------------------------------

Sorry to come in late, but I am a major +1 for this. I have been entertaining storing everything
in META route for some time, and it has definite advantages: 
 - No more reference files
 - No more HFileLink hack
 - Copy-on-write table copy/clone
 - Snapshots should be simpler. Plus there will be very little difference between a snapshot
vs a copy-on-write table or reference from a region split. We can also do reference this file,
but only for these ranges kind of linking. 
 - We would be basically doing hard links, completely on the app layer
                
> Isolate the FileSystem calls
> ----------------------------
>
>                 Key: HBASE-7806
>                 URL: https://issues.apache.org/jira/browse/HBASE-7806
>             Project: HBase
>          Issue Type: Task
>          Components: regionserver
>    Affects Versions: 0.96.0
>            Reporter: Matteo Bertozzi
>            Assignee: Matteo Bertozzi
>            Priority: Minor
>         Attachments: HBASE-7806.pdf
>
>
> Motivations:
> * No way to change the fs layout without touching all the code (and breaking stuff)
> * Each test create is own mocked fs layout: mkdir(region), mkdir(new Path(region, family))
> * new Path(table, region, family, hfile) is everywhere
> * DIR_NAME constants are not in a single place
> * lots of code does a the same for (region.listStatus()) for (family.listStatus()) ...
> Goals:
>  * Central point for all the fs operations
>  ** Make easier the file creation
>  ** Make easier the store files retrival (with proper reference, link handling)
>  * Removing all the new Path() from the code
>  * Removing all the fs.listStatus() from the code
>  * Cleanup the tests to use the new classes of creating mocks object
>  * Reduce the code (in theory there should be less line than before once this refactor
is complete)
> Since the fs operations are all over the code, the refactor must be gradual, and step
by step limiting the internal fs layout visibility.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message