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

View raw message