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

Jonathan Hsieh commented on HBASE-12629:
----------------------------------------

For users or operators, if a feature isn't documented it doesn't exist and the 
default is the only behavior.  That's one vote for removing the knob.  

I went and rereviewed HBASE-10413 -- the patch that introduces the 
RegionSizeCalculator and adds the info the the InputSplit's getLength() call.  
This doesn't affect the NN -- the data is gathered from ClusterStats -- at most 
an rpc that gathers metric info from the HMaster.  (I guess I can see a case in 
the futre when this could be a problem).  

As a nit, implementation-wise the check on whether to do anything useful is 
inside the RegionSizeCalculator seems wrong.  Instead of having 
RegionSizeCalculator decide internally whether it is enabled/disabled, it 
should be done by either:
1) removing the knob so that you always have the ClusterStatus based 
RegionSizeCalculator (the first patch here)
2) having an "AlwaysZeroRegionSizeCalculator" and a 
"ClusterStatusRegionSizeCaculator" and leave making the decision logic for the 
TableInputFormatBase/MultiTableInputFormat code.  

FYI, the patch I'm looking at -- HBASE-12590 -- rejiggers MR InputSplit ranges 
to deskew region splits for MR jobs and explicitly relies on the region size 
calculation. Having the ClusterStatus based RegionSizeCalc on is a prereq and 
leaving the ability disable it adds a odd corner case and more  testing 
associated with it.  Seems better to just have one knob for this.  This leads 
to: 

1) Just removing that rscalc config so we have one knob using the the 
HBASE-12590 deskew is used.
2) An alternative where we refactor instead of remove and have the HBASE-12590 
patch decides on the to pick the "ClusterStatusRegionSizeCalculator" if enabled 
or "AlwaysZeroRSCalc" if not enabled.  We'd combine HBASE-12590 and 
HBASE-10413's features into one config knob (instead of what currently would be 
two).  If after some testing HBASE-12590 works nicely, I think I'd want it on 
by default as well.   

WDYT?



> Remove hbase.regionsizecalculator.enable from RegionSizeCalculator
> ------------------------------------------------------------------
>
>                 Key: HBASE-12629
>                 URL: https://issues.apache.org/jira/browse/HBASE-12629
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Jonathan Hsieh
>            Assignee: Jonathan Hsieh
>             Fix For: 1.0.0, 2.0.0
>
>         Attachments: 
> 0001-HBASE-12629-Remove-hbase.regionsizecalculator.enable.patch
>
>
> The RegionSizeCalculator has a option to disable it.  It is on by default and 
> end-to-end use with it disabled is not tested or used anywhere except for a 
> simple unit test.  This removes it.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to