You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Duo Zhang (Jira)" <ji...@apache.org> on 2019/12/12 01:58:00 UTC

[jira] [Commented] (HBASE-22124) Optimize the performance for region moving

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

Duo Zhang commented on HBASE-22124:
-----------------------------------

[~stack] OK the issue is here. For fast converting encoded region name to region name.

> Optimize the performance for region moving
> ------------------------------------------
>
>                 Key: HBASE-22124
>                 URL: https://issues.apache.org/jira/browse/HBASE-22124
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Duo Zhang
>            Priority: Major
>         Attachments: HBASE-22124.v0.patch
>
>
> It is an admin operation so we do not care much about the performance in the past, but it is really important for rolling upgrade.
> For AsyncAdmin, if encoded name is present at client side, we will always scan the whole meta region to find the region record first, which is really expensive for a large cluster.
> And we always send the encoded name to master, so at master side, we still need the encoded name -> region name converting, and it is still very expensive
> {code}
>   public RegionState getRegionState(final String encodedRegionName) {
>     // TODO: Need a map <encodedName, ...> but it is just dispatch merge...
>     for (RegionStateNode node: regionsMap.values()) {
>       if (node.getRegionInfo().getEncodedName().equals(encodedRegionName)) {
>         return node.toRegionState();
>       }
>     }
>     return null;
>   }
> {code}
> Need to fix them both.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)