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

Andrey Stepachev commented on HBASE-12016:
------------------------------------------

[~virag] Thank you for looking at this patch.

bq. Just skimmed. The config change looks good and a nit is why to put the meta 
table descriptor instantiation in public constructor? Dont we want to make sure 
that its only initialized once like the earlier public static final way?
bq. For 0.98, we should make sure that we dont remove the META_TABLEDESC from 
HTableDescriptor as that would be client incompatible.
I can create static HTableDescriptor META_TABLEDESC back, just for 
compatibility and with deprecation warning. HBase codebase will not use this 
instance. Does it sounds good?

I think that code should not use static variables, and should query for meta 
descriptor as any other descriptors. That ensures identical descriptor across 
cluster.

As for initialisation, do you have a suggestion, where to place initialised 
instance. In general I don't like an idea to have a static instance, which will 
be initialised by some unknown config. I think it is better to strictly 
correlate config and instance of HTableDescriptor. In proposed patch it is 
strictly correlated with FSTableDescriptor instance, which was instantiated 
with some config (config now mandatory parameter). Does it sounds good, or we 
need to guarantee single instance of HTabelDescriptor across vm?

> Reduce number of versions in Meta table. Make it configurable
> -------------------------------------------------------------
>
>                 Key: HBASE-12016
>                 URL: https://issues.apache.org/jira/browse/HBASE-12016
>             Project: HBase
>          Issue Type: Improvement
>    Affects Versions: 2.0.0
>            Reporter: Andrey Stepachev
>            Assignee: Andrey Stepachev
>            Priority: Minor
>             Fix For: 2.0.0, 0.98.7, 0.99.1
>
>         Attachments: HBASE-12016.patch, HBASE-12016.patch
>
>
> Currently meta keeps up to 10 versions of each KV. 
> For big metas it leads to substantial memory overhead and scan slowdowns.
> (see https://issues.apache.org/jira/browse/HBASE-11165 )
> Need to keep reasonable number of versions (suggested value is 3). 
> Number of versions configurable via parameter: hbase.meta.versions



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

Reply via email to