You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Andrew Purtell (JIRA)" <ji...@apache.org> on 2016/08/29 16:24:20 UTC
[jira] [Comment Edited] (HBASE-16512) when locate meta region, we
should respect the param "useCache" passed in on 0.98
[ https://issues.apache.org/jira/browse/HBASE-16512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15446338#comment-15446338 ]
Andrew Purtell edited comment on HBASE-16512 at 8/29/16 4:23 PM:
-----------------------------------------------------------------
Pushed. Thanks for the patch [~chenheng] !
was (Author: apurtell):
Pushed
> when locate meta region, we should respect the param "useCache" passed in on 0.98
> ---------------------------------------------------------------------------------
>
> Key: HBASE-16512
> URL: https://issues.apache.org/jira/browse/HBASE-16512
> Project: HBase
> Issue Type: Bug
> Affects Versions: 0.98.21
> Reporter: Heng Chen
> Assignee: Heng Chen
> Fix For: 0.98.22
>
> Attachments: HBASE-16512.0.98.patch, HBASE-16512_0.98.patch
>
>
> we found that when RS with meta crash, client will retry the same request, but it still use the original meta location in cache, so all request retried will failed.
> Notice the code in HConnectionMananger#locateRegionInMeta, the "useCache" passed in is not used when try to found the meta region.
> {code}
> private HRegionLocation locateRegionInMeta(final TableName parentTable,
> final TableName tableName, final byte [] row, boolean useCache,
> Object regionLockObject, boolean retry)
> throws IOException {
> ......
> for (int tries = 0; true; tries++) {
> .....
> HRegionLocation metaLocation = null;
> try {
> // locate the meta region
> metaLocation = locateRegion(parentTable, metaKey, true, false); //NOTICE: we should honor the "useCache" passed in when locate the meta region.
> ....
> }
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)