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

stack commented on HBASE-2468:
------------------------------

I'm for default behavior being grabbing more than just the one row -- ten or 
something.  Regards full-table scan as default, I think it should be an option 
(Its a nice option to have).

On code, here's some comments (Congrats Mingjie on first submission):

Change

{code}
+      this.preFetchRegionLimit = 10; 
{code}

.. to be

{code}
+      this.preFetchRegionLimit = conf.getInt("hbase.client.prefetch.limit", 
10); 
{code}

IMO, never hardcode things like this, and IMO, you don't need to put the config 
out in the hbse-default.xml.... just do the above.  Someone who really needs to 
change it can read code and figure its possible.  If it becomes a popular 
change people make, then we can move it out to hbase-default.xml.

Regards methods that you only call from a unit test, should they be package 
protected rather than protected; i.e. narrower access than protected?

Nit.  You don't need to explain in unit test javadoc why the fix: e.g.:

{code}
+   * This fix is provided to prevent potential storm of META reads for a 
+   * very large table.  
{code}

Otherwise, patch looks great.

> Improvements to prewarm META cache on clients
> ---------------------------------------------
>
>                 Key: HBASE-2468
>                 URL: https://issues.apache.org/jira/browse/HBASE-2468
>             Project: Hadoop HBase
>          Issue Type: Improvement
>          Components: client
>            Reporter: Todd Lipcon
>            Assignee: Mingjie Lai
>             Fix For: 0.21.0
>
>         Attachments: HBASE-2468-trunk.patch
>
>
> A couple different use cases cause storms of reads to META during startup. 
> For example, a large MR job will cause each map task to hit meta since it 
> starts with an empty cache.
> A couple possible improvements have been proposed:
>  - MR jobs could ship a copy of META for the table in the DistributedCache
>  - Clients could prewarm cache by doing a large scan of all the meta for the 
> table instead of random reads for each miss
>  - Each miss could fetch ahead some number of rows in META

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to