[ https://issues.apache.org/jira/browse/HBASE-19813?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ted Yu updated HBASE-19813: --------------------------- Description: The following scenario came from support case. In cluster 1, create RS group rsg. Move table to rsg group. Take snapshot of the table and copy the snapshot to cluster 2 where there is no group called rsg. Cloning snapshot to table new_t4 on cluster 2 fails : {code} 2018-01-09 11:45:30,468 INFO [RestoreSnapshot-pool68-t1] regionserver.HRegion: Closed new_t4,,1514454789243.a6173d2955182ac5bde208301681c6af. 2018-01-09 11:45:30,468 INFO [MASTER_TABLE_OPERATIONS-shubh1-1:16000-0] snapshot.CloneSnapshotHandler: Clone snapshot=snap_t3 on table=new_t4 completed! 2018-01-09 11:45:30,492 INFO [MASTER_TABLE_OPERATIONS-shubh1-1:16000-0] hbase.MetaTableAccessor: Added 1 2018-01-09 11:45:30,492 WARN [MASTER_TABLE_OPERATIONS-shubh1-1:16000-0] rsgroup.RSGroupBasedLoadBalancer: Group for table new_t4 is null 2018-01-09 11:45:30,492 DEBUG [MASTER_TABLE_OPERATIONS-shubh1-1:16000-0] rsgroup.RSGroupBasedLoadBalancer: Group Information found to be null. Some regions might be unassigned. 2018-01-09 11:45:30,492 WARN [MASTER_TABLE_OPERATIONS-shubh1-1:16000-0] master.RegionStates: Failed to open/close a6173d2955182ac5bde208301681c6af on null, set to FAILED_OPEN {code} Here is related code from RSGroupBasedLoadBalancer: {code} List<ServerName> candidateList = filterOfflineServers(info, servers); for (RegionInfo region : regionList) { currentAssignmentMap.put(region, regions.get(region)); } if(candidateList.size() > 0) { assignments.putAll(this.internalBalancer.retainAssignment( currentAssignmentMap, candidateList)); {code} candidateList is empty for table new_t4, leaving region for the table in FAILED_OPEN state. > clone_snapshot fails with region failing to open when RS group feature is > enabled > --------------------------------------------------------------------------------- > > Key: HBASE-19813 > URL: https://issues.apache.org/jira/browse/HBASE-19813 > Project: HBase > Issue Type: Bug > Reporter: Ted Yu > Priority: Major > > The following scenario came from support case. > In cluster 1, create RS group rsg. Move table to rsg group. > Take snapshot of the table and copy the snapshot to cluster 2 where there is > no group called rsg. > Cloning snapshot to table new_t4 on cluster 2 fails : > {code} > 2018-01-09 11:45:30,468 INFO [RestoreSnapshot-pool68-t1] > regionserver.HRegion: Closed > new_t4,,1514454789243.a6173d2955182ac5bde208301681c6af. > 2018-01-09 11:45:30,468 INFO [MASTER_TABLE_OPERATIONS-shubh1-1:16000-0] > snapshot.CloneSnapshotHandler: Clone snapshot=snap_t3 on table=new_t4 > completed! > 2018-01-09 11:45:30,492 INFO [MASTER_TABLE_OPERATIONS-shubh1-1:16000-0] > hbase.MetaTableAccessor: Added 1 > 2018-01-09 11:45:30,492 WARN [MASTER_TABLE_OPERATIONS-shubh1-1:16000-0] > rsgroup.RSGroupBasedLoadBalancer: Group for table new_t4 is null > 2018-01-09 11:45:30,492 DEBUG [MASTER_TABLE_OPERATIONS-shubh1-1:16000-0] > rsgroup.RSGroupBasedLoadBalancer: Group Information found to be null. Some > regions might be unassigned. > 2018-01-09 11:45:30,492 WARN [MASTER_TABLE_OPERATIONS-shubh1-1:16000-0] > master.RegionStates: Failed to open/close a6173d2955182ac5bde208301681c6af on > null, set to FAILED_OPEN > {code} > Here is related code from RSGroupBasedLoadBalancer: > {code} > List<ServerName> candidateList = filterOfflineServers(info, servers); > for (RegionInfo region : regionList) { > currentAssignmentMap.put(region, regions.get(region)); > } > if(candidateList.size() > 0) { > assignments.putAll(this.internalBalancer.retainAssignment( > currentAssignmentMap, candidateList)); > {code} > candidateList is empty for table new_t4, leaving region for the table in > FAILED_OPEN state. -- This message was sent by Atlassian JIRA (v7.6.3#76005)