+ " current: " + current + " favored nodes: " + favoredNodes); try { this.services.getAssignmentManager().unassign(hri); } catch (IOException e) { LOG.warn("Failed unassign", e);
private void updateFailedAssignments() { // Kick all regions in FAILED_OPEN state List<RegionInfo> stuckAssignments = Lists.newArrayList(); for (RegionStateNode state : masterServices.getAssignmentManager().getRegionStates() .getRegionsInTransition()) { if (state.isStuck()) { stuckAssignments.add(state.getRegionInfo()); } } for (RegionInfo region : stuckAssignments) { LOG.info("Retrying assignment of " + region); try { masterServices.getAssignmentManager().unassign(region); } catch (IOException e) { LOG.warn("Unable to reassign " + region, e); } } }
master.getAssignmentManager().unassign(hri); if (master.cpHost != null) { master.cpHost.postUnassign(hri, force);
am.unassign(b); am.offlineRegion(b); try {
@Test public void testWholesomeMerge() throws Exception { LOG.info("Starting " + name.getMethodName()); final TableName tableName = TableName.valueOf(name.getMethodName()); // Create table and load data. Table table = createTableAndLoadData(MASTER, tableName); // Merge 1st and 2nd region mergeRegionsAndVerifyRegionNum(MASTER, tableName, 0, 1, INITIAL_REGION_NUM - 1); // Merge 2nd and 3th region PairOfSameType<RegionInfo> mergedRegions = mergeRegionsAndVerifyRegionNum(MASTER, tableName, 1, 2, INITIAL_REGION_NUM - 2); verifyRowCount(table, ROWSIZE); // Randomly choose one of the two merged regions RegionInfo hri = RandomUtils.nextBoolean() ? mergedRegions.getFirst() : mergedRegions.getSecond(); MiniHBaseCluster cluster = TEST_UTIL.getHBaseCluster(); AssignmentManager am = cluster.getMaster().getAssignmentManager(); RegionStates regionStates = am.getRegionStates(); // We should not be able to assign it again am.assign(hri); assertFalse("Merged region can't be assigned", regionStates.isRegionInTransition(hri)); // We should not be able to unassign it either am.unassign(hri); assertFalse("Merged region can't be unassigned", regionStates.isRegionInTransition(hri)); table.close(); }
am.unassign(hri); fail("Should have thrown exception"); } catch (DoNotRetryIOException e) {
private void updateFailedAssignments() { // Kick all regions in FAILED_OPEN state List<RegionInfo> stuckAssignments = Lists.newArrayList(); for (RegionStateNode state: masterServices.getAssignmentManager().getRegionStates().getRegionsInTransition()) { if (state.isStuck()) { stuckAssignments.add(state.getRegionInfo()); } } for (RegionInfo region: stuckAssignments) { LOG.info("Retrying assignment of " + region); try { masterServices.getAssignmentManager().unassign(region); } catch (IOException e) { LOG.warn("Unable to reassign " + region, e); } } }
private void updateFailedAssignments() { // Kick all regions in FAILED_OPEN state List<RegionInfo> stuckAssignments = Lists.newArrayList(); for (RegionStateNode state: masterServices.getAssignmentManager().getRegionStates().getRegionsInTransition()) { if (state.isStuck()) { stuckAssignments.add(state.getRegionInfo()); } } for (RegionInfo region: stuckAssignments) { LOG.info("Retrying assignment of " + region); try { masterServices.getAssignmentManager().unassign(region); } catch (IOException e) { LOG.warn("Unable to reassign " + region, e); } } }
am.unassign(b); am.offlineRegion(b); try {
@Test public void testWholesomeMerge() throws Exception { LOG.info("Starting " + name.getMethodName()); final TableName tableName = TableName.valueOf(name.getMethodName()); // Create table and load data. Table table = createTableAndLoadData(MASTER, tableName); // Merge 1st and 2nd region mergeRegionsAndVerifyRegionNum(MASTER, tableName, 0, 1, INITIAL_REGION_NUM - 1); // Merge 2nd and 3th region PairOfSameType<RegionInfo> mergedRegions = mergeRegionsAndVerifyRegionNum(MASTER, tableName, 1, 2, INITIAL_REGION_NUM - 2); verifyRowCount(table, ROWSIZE); // Randomly choose one of the two merged regions RegionInfo hri = RandomUtils.nextBoolean() ? mergedRegions.getFirst() : mergedRegions.getSecond(); MiniHBaseCluster cluster = TEST_UTIL.getHBaseCluster(); AssignmentManager am = cluster.getMaster().getAssignmentManager(); RegionStates regionStates = am.getRegionStates(); // We should not be able to assign it again am.assign(hri); assertFalse("Merged region can't be assigned", regionStates.isRegionInTransition(hri)); // We should not be able to unassign it either am.unassign(hri); assertFalse("Merged region can't be unassigned", regionStates.isRegionInTransition(hri)); table.close(); }
am.unassign(hri); fail("Should have thrown exception"); } catch (UnexpectedStateException e) {