throw new HBaseIOException(msg); rsGroupInfoManager = cps.get(0).getGroupInfoManager(); if(rsGroupInfoManager == null){ String msg = "RSGroupInfoManager hasn't been initialized";
@Test public void testGroupInfoMultiAccessing() throws Exception { RSGroupInfoManager manager = rsGroupAdminEndpoint.getGroupInfoManager(); RSGroupInfo defaultGroup = manager.getRSGroup("default"); // getRSGroup updates default group's server list // this process must not affect other threads iterating the list Iterator<Address> it = defaultGroup.getServers().iterator(); manager.getRSGroup("default"); it.next(); }
@Test public void testMisplacedRegions() throws Exception { final TableName tableName = TableName.valueOf(tablePrefix + "_testMisplacedRegions"); LOG.info("testMisplacedRegions"); final RSGroupInfo RSGroupInfo = addGroup("testMisplacedRegions", 1); TEST_UTIL.createMultiRegionTable(tableName, new byte[] { 'f' }, 15); TEST_UTIL.waitUntilAllRegionsAssigned(tableName); rsGroupAdminEndpoint.getGroupInfoManager().moveTables(Sets.newHashSet(tableName), RSGroupInfo.getName()); admin.balancerSwitch(true, true); assertTrue(rsGroupAdmin.balanceRSGroup(RSGroupInfo.getName())); admin.balancerSwitch(false, true); assertTrue(observer.preBalanceRSGroupCalled); assertTrue(observer.postBalanceRSGroupCalled); TEST_UTIL.waitFor(60000, new Predicate<Exception>() { @Override public boolean evaluate() throws Exception { ServerName serverName = ServerName.valueOf(RSGroupInfo.getServers().iterator().next().toString(), 1); return admin.getConnection().getAdmin().getRegions(serverName).size() == 15; } }); }
.getMasterCoprocessorHost().findCoprocessor(RSGroupAdminEndpoint.class).getGroupInfoManager();
throw new HBaseIOException(msg); rsGroupInfoManager = cps.get(0).getGroupInfoManager(); if(rsGroupInfoManager == null){ String msg = "RSGroupInfoManager hasn't been initialized";
throw new HBaseIOException(msg); rsGroupInfoManager = cps.get(0).getGroupInfoManager(); if(rsGroupInfoManager == null){ String msg = "RSGroupInfoManager hasn't been initialized";
@Test public void testGroupInfoMultiAccessing() throws Exception { RSGroupInfoManager manager = rsGroupAdminEndpoint.getGroupInfoManager(); RSGroupInfo defaultGroup = manager.getRSGroup("default"); // getRSGroup updates default group's server list // this process must not affect other threads iterating the list Iterator<Address> it = defaultGroup.getServers().iterator(); manager.getRSGroup("default"); it.next(); }
@Test public void testMisplacedRegions() throws Exception { final TableName tableName = TableName.valueOf(tablePrefix+"_testMisplacedRegions"); LOG.info("testMisplacedRegions"); final RSGroupInfo RSGroupInfo = addGroup("testMisplacedRegions", 1); TEST_UTIL.createMultiRegionTable(tableName, new byte[]{'f'}, 15); TEST_UTIL.waitUntilAllRegionsAssigned(tableName); rsGroupAdminEndpoint.getGroupInfoManager() .moveTables(Sets.newHashSet(tableName), RSGroupInfo.getName()); admin.setBalancerRunning(true,true); assertTrue(rsGroupAdmin.balanceRSGroup(RSGroupInfo.getName())); admin.setBalancerRunning(false,true); assertTrue(observer.preBalanceRSGroupCalled); assertTrue(observer.postBalanceRSGroupCalled); TEST_UTIL.waitFor(60000, new Predicate<Exception>() { @Override public boolean evaluate() throws Exception { ServerName serverName = ServerName.valueOf(RSGroupInfo.getServers().iterator().next().toString(), 1); return admin.getConnection().getAdmin() .getOnlineRegions(serverName).size() == 15; } }); }
.findCoprocessor(RSGroupAdminEndpoint.class).getGroupInfoManager();