You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Enis Soztutar (JIRA)" <ji...@apache.org> on 2013/03/06 04:12:15 UTC
[jira] [Commented] (HBASE-7806) Isolate the FileSystem calls
[ 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