You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Toshihiro Suzuki (JIRA)" <ji...@apache.org> on 2018/12/29 08:54:00 UTC
[jira] [Commented] (HBASE-21648) [rsgroup] hbase shell
"move_servers_rsgroup" or "balance_rsgroup" will be failed when meet a
split region.
[ https://issues.apache.org/jira/browse/HBASE-21648?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16730605#comment-16730605 ]
Toshihiro Suzuki commented on HBASE-21648:
------------------------------------------
Could you please add test for the issue to the patch?
> [rsgroup] hbase shell "move_servers_rsgroup" or "balance_rsgroup" will be failed when meet a split region.
> ----------------------------------------------------------------------------------------------------------
>
> Key: HBASE-21648
> URL: https://issues.apache.org/jira/browse/HBASE-21648
> Project: HBase
> Issue Type: Bug
> Components: rsgroup
> Affects Versions: 2.1.0
> Reporter: xuming
> Priority: Major
> Attachments: HBASE-21648.v1.patch
>
>
> A example:
> We have a table "A" which is in RSGroup "group1". "bd806f94a53be74e65bd76e1e6e16e5a" is a region of A and is opened on RS "rs1".
> Two steps will repeat this bug:
> step1: Split region bd806f94a53be74e65bd76e1e6e16e5a
> step2: Before the region is cleared by CatalogJanitor, client runs shell : move_server_rsgroup 'group2', ['rs1:60020'] or balance_rsgroup 'group1'
> Finally, client will have exceptions below and rest regions moving will be interrupted.
> {noformat}
> ERROR: org.apache.hadoop.hbase.client.DoNotRetryRegionException: bd806f94a53be74e65bd76e1e6e16e5a is not OPEN
> at org.apache.hadoop.hbase.master.procedure.AbstractStateMachineTableProcedure.checkOnline(AbstractStateMachineTableProcedure.java:189)
> at org.apache.hadoop.hbase.master.assignment.MoveRegionProcedure.<init>(MoveRegionProcedure.java:71)
> at org.apache.hadoop.hbase.master.assignment.AssignmentManager.createMoveRegionProcedure(AssignmentManager.java:755)
> at org.apache.hadoop.hbase.master.assignment.AssignmentManager.move(AssignmentManager.java:560)
> at org.apache.hadoop.hbase.rsgroup.RSGroupAdminServer.moveServers(RSGroupAdminServer.java:349)
> at org.apache.hadoop.hbase.rsgroup.FGRSGroupAdminServer.moveServers(FGRSGroupAdminServer.java:119)
> at org.apache.hadoop.hbase.rsgroup.RSGroupAdminEndpoint$RSGroupAdminServiceImpl.moveServers(RSGroupAdminEndpoint.java:209)
> at org.apache.hadoop.hbase.protobuf.generated.RSGroupAdminProtos$RSGroupAdminService.callMethod(RSGroupAdminProtos.java:13870)
> at org.apache.hadoop.hbase.master.MasterRpcServices.execMasterService(MasterRpcServices.java:813)
> at org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java)
> at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:409)
> at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:130)
> at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:324)
> at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:304)
> For usage try 'help "move_servers_rsgroup”'
> ERROR: org.apache.hadoop.hbase.client.DoNotRetryRegionException: bd806f94a53be74e65bd76e1e6e16e5a is not OPEN
> at org.apache.hadoop.hbase.master.procedure.AbstractStateMachineTableProcedure.checkOnline(AbstractStateMachineTableProcedure.java:189)
> at org.apache.hadoop.hbase.master.assignment.MoveRegionProcedure.<init>(MoveRegionProcedure.java:71)
> at org.apache.hadoop.hbase.master.assignment.AssignmentManager.createMoveRegionProcedure(AssignmentManager.java:755)
> at org.apache.hadoop.hbase.master.assignment.AssignmentManager.moveAsync(AssignmentManager.java:565)
> at org.apache.hadoop.hbase.rsgroup.RSGroupAdminServer.balanceRSGroup(RSGroupAdminServer.java:516)
> at org.apache.hadoop.hbase.rsgroup.FGRSGroupAdminServer.balanceRSGroup(FGRSGroupAdminServer.java:164)
> at org.apache.hadoop.hbase.rsgroup.RSGroupAdminEndpoint$RSGroupAdminServiceImpl.balanceRSGroup(RSGroupAdminEndpoint.java:296)
> at org.apache.hadoop.hbase.protobuf.generated.RSGroupAdminProtos$RSGroupAdminService.callMethod(RSGroupAdminProtos.java:13890)
> at org.apache.hadoop.hbase.master.MasterRpcServices.execMasterService(MasterRpcServices.java:813)
> at org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java)
> at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:409)
> at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:130)
> at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:324)
> at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:304)
> For usage try 'help "balance_rsgroup"'{noformat}
> Aflter splitting, this parent region will not be used anymore and will be cleared by CatalogJanitor in the future. So should we ignore moving it when doing move_server_rsgroup or balance_rsgroup?
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)