hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Matteo Bertozzi (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-7786) Consolidate HRegion creation/opening API
Date Thu, 07 Feb 2013 17:57:13 GMT

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

Matteo Bertozzi commented on HBASE-7786:
----------------------------------------

{quote}
{code}
Used only by tests and SplitTransaction to reopen the region.
You should use createHRegion() or openHRegion()
{code}
Is it possible to get rid of it instead? It just does redirect to different method, might
as well have it in the tests themselves.
{quote}
Nah... the idea was naving initialize() private, since the user should not know about that...
but a couple of tests uses the constructor new HRegion() { @override method() } to slightly
change the behaviour... I guess I can mock it, or set the REGION_IMPL but it makes the test
less readable.

{quote}
HRegion createDaughterRegion(final HRegionInfo hri, final Path daughterTmpDir)
Is this used anywhere except for the other overload?
{quote}
This is used only by the split code, and inside HRegion just to make newHRegion() private
                
> Consolidate HRegion creation/opening API
> ----------------------------------------
>
>                 Key: HBASE-7786
>                 URL: https://issues.apache.org/jira/browse/HBASE-7786
>             Project: HBase
>          Issue Type: Bug
>          Components: regionserver
>    Affects Versions: 0.96.0
>            Reporter: Matteo Bertozzi
>            Assignee: Matteo Bertozzi
>         Attachments: HBASE-7786-v0.patch, HBASE-7786-v1.patch
>
>
> Currently we have 4 ways to instantiate an HRegion.
>  * HRegion.createHRegion()
>  * HRegion.openHRegion()
>  * HRegion.newHRegion() + r.initialize()
>  * new HRegion() + r.initialize()
> Aside from tests and HMerge and SplitTransaction code everyone use createHRegion() and
openHRegion(). To avoid errors due to missing initialization calls I think we should limit
the access to newHRegion() and the constructor.

--
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