You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Xiang Li (JIRA)" <ji...@apache.org> on 2019/03/01 01:09:00 UTC

[jira] [Commented] (HBASE-21969) Improve the update of destination rsgroup of RSGroupInfoManagerImpl#moveTables()

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

Xiang Li commented on HBASE-21969:
----------------------------------

[~xucang] Could you please help to review my patches at your convenience? The Hadoop QA run on branch-2 patch has something wrong, but seems not related. The 2nd run followed got passed.

> Improve the update of destination rsgroup of RSGroupInfoManagerImpl#moveTables() 
> ---------------------------------------------------------------------------------
>
>                 Key: HBASE-21969
>                 URL: https://issues.apache.org/jira/browse/HBASE-21969
>             Project: HBase
>          Issue Type: Improvement
>          Components: rsgroup
>            Reporter: Xiang Li
>            Assignee: Xiang Li
>            Priority: Minor
>         Attachments: HBASE-21969.branch-1.000.patch, HBASE-21969.branch-2.000.patch, HBASE-21969.master.000.patch, HBASE-21969.master.001.patch
>
>
> RSGroupInfoManagerImpl#moveTables() has the following code:
> {code}
> for (TableName tableName : tableNames) {
>   ....
>   if (groupName != null) {
>     RSGroupInfo dst = new RSGroupInfo(newGroupMap.get(groupName));
>     dst.addTable(tableName);
>     newGroupMap.put(dst.getName(), dst);
>   }
> }
> {code}
> It is to add the tables to "dst" (the destination rsgroup) and put it back to newGroupMap to replace the old RSGroupInfo instance in the map.
> The current logic allocates a new RSGroupInfo instance and calls put operation of map for each table to move, which is not needed and causes a lot of objects to be allocated (the constructor of RSGroupInfo allocates 2 TreeSets).
> The logic could be improved as: allocate a new RSGroupInfo only once, add all tables, and put it into the map.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)