You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by jx...@apache.org on 2014/03/25 20:34:55 UTC
svn commit: r1581479 [7/9] - in /hbase/trunk:
hbase-client/src/main/java/org/apache/hadoop/hbase/catalog/
hbase-client/src/main/java/org/apache/hadoop/hbase/client/
hbase-it/src/test/java/org/apache/hadoop/hbase/
hbase-it/src/test/java/org/apache/hadoo...
Modified: hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionMergeTransaction.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionMergeTransaction.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionMergeTransaction.java (original)
+++ hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionMergeTransaction.java Tue Mar 25 19:34:52 2014
@@ -42,7 +42,6 @@ import org.apache.hadoop.hbase.catalog.C
import org.apache.hadoop.hbase.catalog.MetaEditor;
import org.apache.hadoop.hbase.catalog.MetaReader;
import org.apache.hadoop.hbase.client.Delete;
-import org.apache.hadoop.hbase.client.HTable;
import org.apache.hadoop.hbase.client.Mutation;
import org.apache.hadoop.hbase.client.Put;
import org.apache.hadoop.hbase.executor.EventType;
@@ -240,7 +239,8 @@ public class RegionMergeTransaction {
public HRegion execute(final Server server,
final RegionServerServices services) throws IOException {
if (rsCoprocessorHost == null) {
- rsCoprocessorHost = server != null ? ((HRegionServer) server).getCoprocessorHost() : null;
+ rsCoprocessorHost = server != null ?
+ ((HRegionServer) server).getRegionServerCoprocessorHost() : null;
}
HRegion mergedRegion = createMergedRegion(server, services);
if (rsCoprocessorHost != null) {
Modified: hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionServerServices.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionServerServices.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionServerServices.java (original)
+++ hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionServerServices.java Tue Mar 25 19:34:52 2014
@@ -18,27 +18,26 @@
*/
package org.apache.hadoop.hbase.regionserver;
+import java.io.IOException;
+import java.util.Map;
+import java.util.concurrent.ConcurrentMap;
+
import org.apache.hadoop.classification.InterfaceAudience;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.hbase.HRegionInfo;
import org.apache.hadoop.hbase.catalog.CatalogTracker;
import org.apache.hadoop.hbase.executor.ExecutorService;
-import org.apache.hadoop.hbase.ipc.PriorityFunction;
import org.apache.hadoop.hbase.ipc.RpcServerInterface;
import org.apache.hadoop.hbase.master.TableLockManager;
import org.apache.hadoop.hbase.regionserver.wal.HLog;
import org.apache.zookeeper.KeeperException;
-import java.io.IOException;
-import java.util.Map;
-import java.util.concurrent.ConcurrentMap;
-
/**
* Services provided by {@link HRegionServer}
*/
@InterfaceAudience.Private
public interface RegionServerServices
- extends OnlineRegions, FavoredNodesForRegion, PriorityFunction {
+ extends OnlineRegions, FavoredNodesForRegion {
/**
* @return True if this regionserver is stopping.
*/
Modified: hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RpcSchedulerFactory.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RpcSchedulerFactory.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RpcSchedulerFactory.java (original)
+++ hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RpcSchedulerFactory.java Tue Mar 25 19:34:52 2014
@@ -18,21 +18,16 @@
package org.apache.hadoop.hbase.regionserver;
import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.hbase.ipc.PriorityFunction;
import org.apache.hadoop.hbase.ipc.RpcScheduler;
/**
- * A factory class that constructs an {@link org.apache.hadoop.hbase.ipc.RpcScheduler} for
- * a region server.
+ * A factory class that constructs an {@link org.apache.hadoop.hbase.ipc.RpcScheduler}.
*/
public interface RpcSchedulerFactory {
/**
* Constructs a {@link org.apache.hadoop.hbase.ipc.RpcScheduler}.
- *
- * Please note that this method is called in constructor of {@link HRegionServer}, so some
- * fields may not be ready for access. The reason that {@code HRegionServer} is passed as
- * parameter here is that an RPC scheduler may need to access data structure inside
- * {@code HRegionServer} (see example in {@link SimpleRpcSchedulerFactory}).
*/
- RpcScheduler create(Configuration conf, RegionServerServices server);
+ RpcScheduler create(Configuration conf, PriorityFunction priority);
}
Modified: hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SimpleRpcSchedulerFactory.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SimpleRpcSchedulerFactory.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SimpleRpcSchedulerFactory.java (original)
+++ hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SimpleRpcSchedulerFactory.java Tue Mar 25 19:34:52 2014
@@ -19,14 +19,15 @@ package org.apache.hadoop.hbase.regionse
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HConstants;
+import org.apache.hadoop.hbase.ipc.PriorityFunction;
import org.apache.hadoop.hbase.ipc.RpcScheduler;
import org.apache.hadoop.hbase.ipc.SimpleRpcScheduler;
-/** Constructs a {@link SimpleRpcScheduler}. for the region server. */
+/** Constructs a {@link SimpleRpcScheduler}. */
class SimpleRpcSchedulerFactory implements RpcSchedulerFactory {
@Override
- public RpcScheduler create(Configuration conf, RegionServerServices server) {
+ public RpcScheduler create(Configuration conf, PriorityFunction priority) {
int handlerCount = conf.getInt(HConstants.REGION_SERVER_HANDLER_COUNT,
HConstants.DEFAULT_REGION_SERVER_HANDLER_COUNT);
return new SimpleRpcScheduler(
@@ -36,7 +37,7 @@ class SimpleRpcSchedulerFactory implemen
HConstants.DEFAULT_REGION_SERVER_META_HANDLER_COUNT),
conf.getInt(HConstants.REGION_SERVER_REPLICATION_HANDLER_COUNT,
HConstants.DEFAULT_REGION_SERVER_REPLICATION_HANDLER_COUNT),
- server,
+ priority,
HConstants.QOS_THRESHOLD);
}
}
Modified: hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/util/JVMClusterUtil.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/util/JVMClusterUtil.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/util/JVMClusterUtil.java (original)
+++ hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/util/JVMClusterUtil.java Tue Mar 25 19:34:52 2014
@@ -29,10 +29,8 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.hadoop.classification.InterfaceAudience;
import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.hbase.master.HMaster;
import org.apache.hadoop.hbase.regionserver.HRegionServer;
-import org.apache.hadoop.hbase.regionserver.ShutdownHook;
import org.apache.hadoop.util.ReflectionUtils;
/**
@@ -195,9 +193,6 @@ public class JVMClusterUtil {
if (regionservers != null) {
for (JVMClusterUtil.RegionServerThread t: regionservers) {
- HRegionServer hrs = t.getRegionServer();
- ShutdownHook.install(hrs.getConfiguration(), FileSystem.get(hrs
- .getConfiguration()), hrs, t);
t.start();
}
}
Modified: hbase/trunk/hbase-server/src/main/resources/hbase-webapps/master/zk.jsp
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/main/resources/hbase-webapps/master/zk.jsp?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/main/resources/hbase-webapps/master/zk.jsp (original)
+++ hbase/trunk/hbase-server/src/main/resources/hbase-webapps/master/zk.jsp Tue Mar 25 19:34:52 2014
@@ -23,7 +23,7 @@
import="org.apache.hadoop.hbase.HBaseConfiguration"
import="org.apache.hadoop.hbase.master.HMaster"%><%
HMaster master = (HMaster)getServletContext().getAttribute(HMaster.MASTER);
- ZooKeeperWatcher watcher = master.getZooKeeperWatcher();
+ ZooKeeperWatcher watcher = master.getZooKeeper();
%>
<!--[if IE]>
<!DOCTYPE html>
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/HBaseCluster.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/HBaseCluster.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/HBaseCluster.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/HBaseCluster.java Tue Mar 25 19:34:52 2014
@@ -97,7 +97,7 @@ public abstract class HBaseCluster imple
/**
* Returns an {@link MasterAdminService.BlockingInterface} to the active master
*/
- public abstract MasterService.BlockingInterface getMaster()
+ public abstract MasterService.BlockingInterface getMasterAdminService()
throws IOException;
/**
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/HBaseTestingUtility.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/HBaseTestingUtility.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/HBaseTestingUtility.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/HBaseTestingUtility.java Tue Mar 25 19:34:52 2014
@@ -40,6 +40,7 @@ import java.util.Map;
import java.util.NavigableSet;
import java.util.Random;
import java.util.Set;
+import java.util.TreeSet;
import java.util.UUID;
import java.util.concurrent.TimeUnit;
@@ -75,12 +76,14 @@ import org.apache.hadoop.hbase.mapreduce
import org.apache.hadoop.hbase.master.HMaster;
import org.apache.hadoop.hbase.master.RegionStates;
import org.apache.hadoop.hbase.master.ServerManager;
+import org.apache.hadoop.hbase.protobuf.ProtobufUtil;
import org.apache.hadoop.hbase.regionserver.BloomType;
import org.apache.hadoop.hbase.regionserver.HRegion;
import org.apache.hadoop.hbase.regionserver.HRegionServer;
import org.apache.hadoop.hbase.regionserver.HStore;
import org.apache.hadoop.hbase.regionserver.InternalScanner;
import org.apache.hadoop.hbase.regionserver.RegionServerServices;
+import org.apache.hadoop.hbase.regionserver.RegionServerStoppedException;
import org.apache.hadoop.hbase.regionserver.wal.HLog;
import org.apache.hadoop.hbase.security.User;
import org.apache.hadoop.hbase.tool.Canary;
@@ -88,6 +91,7 @@ import org.apache.hadoop.hbase.util.Byte
import org.apache.hadoop.hbase.util.FSUtils;
import org.apache.hadoop.hbase.util.JVMClusterUtil;
import org.apache.hadoop.hbase.util.JVMClusterUtil.MasterThread;
+import org.apache.hadoop.hbase.util.JVMClusterUtil.RegionServerThread;
import org.apache.hadoop.hbase.util.RegionSplitter;
import org.apache.hadoop.hbase.util.RetryCounter;
import org.apache.hadoop.hbase.util.Threads;
@@ -124,6 +128,7 @@ import org.apache.zookeeper.ZooKeeper.St
*/
@InterfaceAudience.Public
@InterfaceStability.Evolving
+@SuppressWarnings("deprecation")
public class HBaseTestingUtility extends HBaseCommonTestingUtility {
private MiniZooKeeperCluster zkCluster = null;
@@ -1928,7 +1933,6 @@ public class HBaseTestingUtility extends
return createMultiRegions(c, table, family, regionStartKeys);
}
- @SuppressWarnings("deprecation")
public int createMultiRegions(final Configuration c, final HTable table,
final byte[] columnFamily, byte [][] startKeys)
throws IOException {
@@ -2740,6 +2744,32 @@ public class HBaseTestingUtility extends
return user;
}
+ public static NavigableSet<String> getAllOnlineRegions(MiniHBaseCluster cluster)
+ throws IOException {
+ NavigableSet<String> online = new TreeSet<String>();
+ for (RegionServerThread rst : cluster.getLiveRegionServerThreads()) {
+ try {
+ for (HRegionInfo region :
+ ProtobufUtil.getOnlineRegions(rst.getRegionServer().getRSRpcServices())) {
+ online.add(region.getRegionNameAsString());
+ }
+ } catch (RegionServerStoppedException e) {
+ // That's fine.
+ }
+ }
+ for (MasterThread mt : cluster.getLiveMasterThreads()) {
+ try {
+ for (HRegionInfo region :
+ ProtobufUtil.getOnlineRegions(mt.getMaster().getRSRpcServices())) {
+ online.add(region.getRegionNameAsString());
+ }
+ } catch (RegionServerStoppedException e) {
+ // That's fine.
+ }
+ }
+ return online;
+ }
+
/**
* Set maxRecoveryErrorCount in DFSClient. In 0.20 pre-append its hard-coded to 5 and
* makes tests linger. Here is the exception you'll see:
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/MiniHBaseCluster.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/MiniHBaseCluster.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/MiniHBaseCluster.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/MiniHBaseCluster.java Tue Mar 25 19:34:52 2014
@@ -33,6 +33,7 @@ import org.apache.hadoop.hbase.client.HC
import org.apache.hadoop.hbase.master.HMaster;
import org.apache.hadoop.hbase.protobuf.generated.AdminProtos.AdminService;
import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.ClientService;
+import org.apache.hadoop.hbase.protobuf.generated.MasterProtos.MasterService;
import org.apache.hadoop.hbase.protobuf.generated.RegionServerStatusProtos.RegionServerStartupResponse;
import org.apache.hadoop.hbase.regionserver.HRegion;
import org.apache.hadoop.hbase.regionserver.HRegionServer;
@@ -379,11 +380,32 @@ public class MiniHBaseCluster extends HB
* Returns the current active master, if available.
* @return the active HMaster, null if none is active.
*/
+ public MasterService.BlockingInterface getMasterAdminService() {
+ return this.hbaseCluster.getActiveMaster().getMasterRpcServices();
+ }
+
+ /**
+ * Returns the current active master, if available.
+ * @return the active HMaster, null if none is active.
+ */
public HMaster getMaster() {
return this.hbaseCluster.getActiveMaster();
}
/**
+ * Returns the current active master thread, if available.
+ * @return the active MasterThread, null if none is active.
+ */
+ public MasterThread getMasterThread() {
+ for (MasterThread mt: hbaseCluster.getLiveMasters()) {
+ if (mt.getMaster().isActiveMaster()) {
+ return mt;
+ }
+ }
+ return null;
+ }
+
+ /**
* Returns the master at the specified index, if available.
* @return the active HMaster, null if none is active.
*/
@@ -490,6 +512,7 @@ public class MiniHBaseCluster extends HB
* Shut down the mini HBase cluster
* @throws IOException
*/
+ @SuppressWarnings("deprecation")
public void shutdown() throws IOException {
if (this.hbaseCluster != null) {
this.hbaseCluster.shutdown();
@@ -635,6 +658,15 @@ public class MiniHBaseCluster extends HB
@Override
public ServerName getServerHoldingRegion(byte[] regionName) throws IOException {
+ // Assume there is only one master thread which is the active master.
+ // If there are multiple master threads, the backup master threads
+ // should hold some regions. Please refer to #countServedRegions
+ // to see how we find out all regions.
+ HMaster master = getMaster();
+ HRegion region = master.getOnlineRegion(regionName);
+ if (region != null) {
+ return master.getServerName();
+ }
int index = getServerWith(regionName);
if (index < 0) {
return null;
@@ -653,6 +685,9 @@ public class MiniHBaseCluster extends HB
for (JVMClusterUtil.RegionServerThread rst : getLiveRegionServerThreads()) {
count += rst.getRegionServer().getNumberOfOnlineRegions();
}
+ for (JVMClusterUtil.MasterThread mt : getLiveMasterThreads()) {
+ count += mt.getMaster().getNumberOfOnlineRegions();
+ }
return count;
}
@@ -711,12 +746,12 @@ public class MiniHBaseCluster extends HB
@Override
public AdminService.BlockingInterface getAdminProtocol(ServerName serverName) throws IOException {
- return getRegionServer(getRegionServerIndex(serverName));
+ return getRegionServer(getRegionServerIndex(serverName)).getRSRpcServices();
}
@Override
public ClientService.BlockingInterface getClientProtocol(ServerName serverName)
throws IOException {
- return getRegionServer(getRegionServerIndex(serverName));
+ return getRegionServer(getRegionServerIndex(serverName)).getRSRpcServices();
}
}
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/MockRegionServerServices.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/MockRegionServerServices.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/MockRegionServerServices.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/MockRegionServerServices.java Tue Mar 25 19:34:52 2014
@@ -24,7 +24,6 @@ import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentSkipListMap;
-import com.google.protobuf.Message;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.hbase.catalog.CatalogTracker;
@@ -33,7 +32,6 @@ import org.apache.hadoop.hbase.fs.HFileS
import org.apache.hadoop.hbase.ipc.RpcServerInterface;
import org.apache.hadoop.hbase.master.TableLockManager;
import org.apache.hadoop.hbase.master.TableLockManager.NullTableLockManager;
-import org.apache.hadoop.hbase.protobuf.generated.RPCProtos;
import org.apache.hadoop.hbase.regionserver.CompactionRequestor;
import org.apache.hadoop.hbase.regionserver.FlushRequester;
import org.apache.hadoop.hbase.regionserver.HRegion;
@@ -218,11 +216,6 @@ class MockRegionServerServices implement
}
@Override
- public int getPriority(RPCProtos.RequestHeader header, Message param) {
- return 0;
- }
-
- @Override
public ServerNonceManager getNonceManager() {
// TODO Auto-generated method stub
return null;
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestDrainingServer.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestDrainingServer.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestDrainingServer.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestDrainingServer.java Tue Mar 25 19:34:52 2014
@@ -134,9 +134,8 @@ public class TestDrainingServer {
balancer, startupMasterExecutor("mockExecutorService"), null, null);
Mockito.when(master.getAssignmentManager()).thenReturn(am);
- Mockito.when(master.getZooKeeperWatcher()).thenReturn(zkWatcher);
Mockito.when(master.getZooKeeper()).thenReturn(zkWatcher);
-
+
am.addPlan(REGIONINFO.getEncodedName(), new RegionPlan(REGIONINFO, null, SERVERNAME_A));
zkWatcher.registerListenerFirst(am);
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestGlobalMemStoreSize.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestGlobalMemStoreSize.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestGlobalMemStoreSize.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestGlobalMemStoreSize.java Tue Mar 25 19:34:52 2014
@@ -81,7 +81,8 @@ public class TestGlobalMemStoreSize {
for (HRegionServer server : getOnlineRegionServers()) {
long globalMemStoreSize = 0;
- for (HRegionInfo regionInfo : ProtobufUtil.getOnlineRegions(server)) {
+ for (HRegionInfo regionInfo :
+ ProtobufUtil.getOnlineRegions(server.getRSRpcServices())) {
globalMemStoreSize +=
server.getFromOnlineRegions(regionInfo.getEncodedName()).
getMemstoreSize().get();
@@ -96,7 +97,8 @@ public class TestGlobalMemStoreSize {
LOG.info("Starting flushes on " + server.getServerName() +
", size=" + server.getRegionServerAccounting().getGlobalMemstoreSize());
- for (HRegionInfo regionInfo : ProtobufUtil.getOnlineRegions(server)) {
+ for (HRegionInfo regionInfo :
+ ProtobufUtil.getOnlineRegions(server.getRSRpcServices())) {
HRegion r = server.getFromOnlineRegions(regionInfo.getEncodedName());
flush(r, server);
}
@@ -111,7 +113,8 @@ public class TestGlobalMemStoreSize {
if (size > 0) {
// If size > 0, see if its because the meta region got edits while
// our test was running....
- for (HRegionInfo regionInfo : ProtobufUtil.getOnlineRegions(server)) {
+ for (HRegionInfo regionInfo :
+ ProtobufUtil.getOnlineRegions(server.getRSRpcServices())) {
HRegion r = server.getFromOnlineRegions(regionInfo.getEncodedName());
long l = r.getMemstoreSize().longValue();
if (l > 0) {
@@ -144,15 +147,6 @@ public class TestGlobalMemStoreSize {
server.getRegionServerAccounting().getGlobalMemstoreSize());
}
- /** figure out how many regions are currently being served. */
- private int getRegionCount() throws IOException {
- int total = 0;
- for (HRegionServer server : getOnlineRegionServers()) {
- total += ProtobufUtil.getOnlineRegions(server).size();
- }
- return total;
- }
-
private List<HRegionServer> getOnlineRegionServers() {
List<HRegionServer> list = new ArrayList<HRegionServer>();
for (JVMClusterUtil.RegionServerThread rst :
@@ -168,12 +162,14 @@ public class TestGlobalMemStoreSize {
* Wait until all the regions are assigned.
*/
private void waitForAllRegionsAssigned() throws IOException {
- while (getRegionCount() < totalRegionNum) {
- LOG.debug("Waiting for there to be "+totalRegionNum+" regions, but there are " + getRegionCount() + " right now.");
+ while (true) {
+ int regionCount = HBaseTestingUtility.getAllOnlineRegions(cluster).size();
+ if (regionCount >= totalRegionNum) break;
+ LOG.debug("Waiting for there to be "+ totalRegionNum
+ +" regions, but there are " + regionCount + " right now.");
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
}
-
}
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestNamespace.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestNamespace.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestNamespace.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestNamespace.java Tue Mar 25 19:34:52 2014
@@ -37,13 +37,11 @@ import org.apache.hadoop.hbase.client.Ge
import org.apache.hadoop.hbase.client.HBaseAdmin;
import org.apache.hadoop.hbase.client.HTable;
import org.apache.hadoop.hbase.client.Put;
-import org.apache.hadoop.hbase.constraint.ConstraintException;
import org.apache.hadoop.hbase.master.HMaster;
import org.apache.hadoop.hbase.util.Bytes;
import org.apache.hadoop.hbase.util.FSUtils;
import org.apache.hadoop.hbase.zookeeper.ZKUtil;
import org.apache.hadoop.hbase.zookeeper.ZooKeeperWatcher;
-import com.google.common.collect.Sets;
import org.junit.AfterClass;
import org.junit.Assert;
import org.junit.Before;
@@ -52,10 +50,7 @@ import org.junit.Ignore;
import org.junit.Test;
import org.junit.experimental.categories.Category;
-import java.io.IOException;
-import java.util.Set;
-
-import static org.junit.Assert.*;
+import com.google.common.collect.Sets;
@Category(MediumTests.class)
public class TestNamespace {
@@ -78,7 +73,7 @@ public class TestNamespace {
cluster = TEST_UTIL.getHBaseCluster();
master = ((MiniHBaseCluster)cluster).getMaster();
zkNamespaceManager =
- new ZKNamespaceManager(master.getZooKeeperWatcher());
+ new ZKNamespaceManager(master.getZooKeeper());
zkNamespaceManager.start();
LOG.info("Done initializing cluster");
}
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestRegionRebalancing.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestRegionRebalancing.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestRegionRebalancing.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestRegionRebalancing.java Tue Mar 25 19:34:52 2014
@@ -149,9 +149,9 @@ public class TestRegionRebalancing {
/** figure out how many regions are currently being served. */
private int getRegionCount() throws IOException {
- int total = 0;
+ int total = 0; // Regions on master are ignored since not counted for balancing
for (HRegionServer server : getOnlineRegionServers()) {
- total += ProtobufUtil.getOnlineRegions(server).size();
+ total += ProtobufUtil.getOnlineRegions(server.getRSRpcServices()).size();
}
return total;
}
@@ -183,11 +183,13 @@ public class TestRegionRebalancing {
+ ", up border: " + avgLoadPlusSlop + "; attempt: " + i);
for (HRegionServer server : servers) {
- int serverLoad = ProtobufUtil.getOnlineRegions(server).size();
+ int serverLoad =
+ ProtobufUtil.getOnlineRegions(server.getRSRpcServices()).size();
LOG.debug(server.getServerName() + " Avg: " + avg + " actual: " + serverLoad);
if (!(avg > 2.0 && serverLoad <= avgLoadPlusSlop
&& serverLoad >= avgLoadMinusSlop)) {
- for (HRegionInfo hri : ProtobufUtil.getOnlineRegions(server)) {
+ for (HRegionInfo hri :
+ ProtobufUtil.getOnlineRegions(server.getRSRpcServices())) {
if (hri.isMetaRegion()) serverLoad--;
// LOG.debug(hri.getRegionNameAsString());
}
@@ -234,7 +236,7 @@ public class TestRegionRebalancing {
* Wait until all the regions are assigned.
*/
private void waitForAllRegionsAssigned() throws IOException {
- int totalRegions = HBaseTestingUtility.KEYS.length+1;
+ int totalRegions = HBaseTestingUtility.KEYS.length;
while (getRegionCount() < totalRegions) {
// while (!cluster.getMaster().allRegionsAssigned()) {
LOG.debug("Waiting for there to be "+ totalRegions +" regions, but there are " + getRegionCount() + " right now.");
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestZooKeeper.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestZooKeeper.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestZooKeeper.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestZooKeeper.java Tue Mar 25 19:34:52 2014
@@ -106,12 +106,17 @@ public class TestZooKeeper {
*/
@Before
public void setUp() throws Exception {
- TEST_UTIL.startMiniHBaseCluster(1, 2);
+ TEST_UTIL.startMiniHBaseCluster(2, 2);
}
@After
public void after() throws Exception {
try {
+ // Some regionserver could fail to delete its znode.
+ // So shutdown could hang. Let's kill them all instead.
+ TEST_UTIL.getHBaseCluster().killAll();
+
+ // Still need to clean things up
TEST_UTIL.shutdownMiniHBaseCluster();
} finally {
TEST_UTIL.getTestFileSystem().delete(FSUtils.getRootDir(TEST_UTIL.getConfiguration()), true);
@@ -205,17 +210,14 @@ public class TestZooKeeper {
connection.close();
}
- @Test (timeout = 60000)
+ @Test (timeout = 120000)
public void testRegionServerSessionExpired() throws Exception {
LOG.info("Starting testRegionServerSessionExpired");
- int metaIndex = TEST_UTIL.getMiniHBaseCluster().getServerWithMeta();
- TEST_UTIL.expireRegionServerSession(metaIndex);
+ TEST_UTIL.expireRegionServerSession(0);
testSanity("testRegionServerSessionExpired");
}
- // @Test Disabled because seems to make no sense expiring master session
- // and then trying to create table (down in testSanity); on master side
- // it will fail because the master's session has expired -- St.Ack 07/24/2012
+ @Test(timeout = 300000)
public void testMasterSessionExpired() throws Exception {
LOG.info("Starting testMasterSessionExpired");
TEST_UTIL.expireMasterSession();
@@ -227,14 +229,14 @@ public class TestZooKeeper {
* test differs from {@link #testMasterSessionExpired} because here
* the master znode will exist in ZK.
*/
- @Test(timeout = 60000)
+ @Test(timeout = 300000)
public void testMasterZKSessionRecoveryFailure() throws Exception {
LOG.info("Starting testMasterZKSessionRecoveryFailure");
MiniHBaseCluster cluster = TEST_UTIL.getHBaseCluster();
HMaster m = cluster.getMaster();
m.abort("Test recovery from zk session expired",
new KeeperException.SessionExpiredException());
- assertFalse(m.isStopped());
+ assertTrue(m.isStopped()); // Master doesn't recover any more
testSanity("testMasterZKSessionRecoveryFailure");
}
@@ -480,13 +482,13 @@ public class TestZooKeeper {
* session. Without the HBASE-6046 fix master always tries to assign all the user regions by
* calling retainAssignment.
*/
- @Test
+ @Test(timeout = 300000)
public void testRegionAssignmentAfterMasterRecoveryDueToZKExpiry() throws Exception {
MiniHBaseCluster cluster = TEST_UTIL.getHBaseCluster();
cluster.startRegionServer();
cluster.waitForActiveAndReadyMaster(10000);
HMaster m = cluster.getMaster();
- ZooKeeperWatcher zkw = m.getZooKeeperWatcher();
+ ZooKeeperWatcher zkw = m.getZooKeeper();
int expectedNumOfListeners = zkw.getNumberOfListeners();
// now the cluster is up. So assign some regions.
HBaseAdmin admin = new HBaseAdmin(TEST_UTIL.getConfiguration());
@@ -500,17 +502,17 @@ public class TestZooKeeper {
admin.createTable(htd, SPLIT_KEYS);
ZooKeeperWatcher zooKeeperWatcher = HBaseTestingUtility.getZooKeeperWatcher(TEST_UTIL);
ZKAssign.blockUntilNoRIT(zooKeeperWatcher);
- m.getZooKeeperWatcher().close();
+ m.getZooKeeper().close();
MockLoadBalancer.retainAssignCalled = false;
m.abort("Test recovery from zk session expired",
new KeeperException.SessionExpiredException());
- assertFalse(m.isStopped());
+ assertTrue(m.isStopped()); // Master doesn't recover any more
// The recovered master should not call retainAssignment, as it is not a
// clean startup.
assertFalse("Retain assignment should not be called", MockLoadBalancer.retainAssignCalled);
// number of listeners should be same as the value before master aborted
// wait for new master is initialized
- cluster.waitForActiveAndReadyMaster(10000);
+ cluster.waitForActiveAndReadyMaster(120000);
assertEquals(expectedNumOfListeners, zkw.getNumberOfListeners());
} finally {
admin.close();
@@ -521,7 +523,7 @@ public class TestZooKeeper {
* Tests whether the logs are split when master recovers from a expired zookeeper session and an
* RS goes down.
*/
- @Test(timeout = 240000)
+ @Test(timeout = 300000)
public void testLogSplittingAfterMasterRecoveryDueToZKExpiry() throws IOException,
KeeperException, InterruptedException {
MiniHBaseCluster cluster = TEST_UTIL.getHBaseCluster();
@@ -549,10 +551,10 @@ public class TestZooKeeper {
p.add(Bytes.toBytes("col"), Bytes.toBytes("ql"), Bytes.toBytes("value" + numberOfPuts));
table.put(p);
}
- m.getZooKeeperWatcher().close();
+ m.getZooKeeper().close();
m.abort("Test recovery from zk session expired",
new KeeperException.SessionExpiredException());
- assertFalse(m.isStopped());
+ assertTrue(m.isStopped()); // Master doesn't recover any more
cluster.getRegionServer(0).abort("Aborting");
// Without patch for HBASE-6046 this test case will always timeout
// with patch the test case should pass.
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/catalog/TestMetaReaderEditor.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/catalog/TestMetaReaderEditor.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/catalog/TestMetaReaderEditor.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/catalog/TestMetaReaderEditor.java Tue Mar 25 19:34:52 2014
@@ -25,23 +25,20 @@ import static org.junit.Assert.assertTru
import java.io.IOException;
import java.util.List;
-import java.util.concurrent.atomic.AtomicBoolean;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.hbase.Abortable;
-import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.HBaseTestingUtility;
import org.apache.hadoop.hbase.HConstants;
import org.apache.hadoop.hbase.HRegionInfo;
import org.apache.hadoop.hbase.MediumTests;
import org.apache.hadoop.hbase.ServerName;
+import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.client.HBaseAdmin;
import org.apache.hadoop.hbase.client.HTable;
import org.apache.hadoop.hbase.util.Bytes;
import org.apache.hadoop.hbase.util.Pair;
-import org.apache.hadoop.hbase.zookeeper.ZooKeeperWatcher;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;
@@ -54,22 +51,7 @@ import org.junit.experimental.categories
public class TestMetaReaderEditor {
private static final Log LOG = LogFactory.getLog(TestMetaReaderEditor.class);
private static final HBaseTestingUtility UTIL = new HBaseTestingUtility();
- private static ZooKeeperWatcher zkw;
private static CatalogTracker CT;
- private final static Abortable ABORTABLE = new Abortable() {
- private final AtomicBoolean abort = new AtomicBoolean(false);
-
- @Override
- public void abort(String why, Throwable e) {
- LOG.info(why, e);
- abort.set(true);
- }
-
- @Override
- public boolean isAborted() {
- return abort.get();
- }
- };
@BeforeClass public static void beforeClass() throws Exception {
UTIL.startMiniCluster(3);
@@ -79,13 +61,11 @@ public class TestMetaReaderEditor {
// responsive. 1 second is default as is ten retries.
c.setLong("hbase.client.pause", 1000);
c.setInt(HConstants.HBASE_CLIENT_RETRIES_NUMBER, 10);
- zkw = new ZooKeeperWatcher(c, "TestMetaReaderEditor", ABORTABLE);
- CT = new CatalogTracker(zkw, c, ABORTABLE);
+ CT = new CatalogTracker(c);
CT.start();
}
@AfterClass public static void afterClass() throws Exception {
- ABORTABLE.abort("test ending", null);
CT.stop();
UTIL.shutdownMiniCluster();
}
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/HConnectionTestingUtility.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/HConnectionTestingUtility.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/HConnectionTestingUtility.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/HConnectionTestingUtility.java Tue Mar 25 19:34:52 2014
@@ -98,7 +98,9 @@ public class HConnectionTestingUtility {
final ClientProtos.ClientService.BlockingInterface client,
final ServerName sn, final HRegionInfo hri)
throws IOException {
- ClusterConnection c = HConnectionTestingUtility.getMockedConnection(conf);
+ HConnectionImplementation c = Mockito.mock(HConnectionImplementation.class);
+ Mockito.when(c.getConfiguration()).thenReturn(conf);
+ ConnectionManager.CONNECTION_INSTANCES.put(new HConnectionKey(conf), c);
Mockito.doNothing().when(c).close();
// Make it so we return a particular location when asked.
final HRegionLocation loc = new HRegionLocation(hri, sn);
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java Tue Mar 25 19:34:52 2014
@@ -18,7 +18,6 @@
*/
package org.apache.hadoop.hbase.client;
-
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
@@ -68,7 +67,12 @@ import org.apache.hadoop.hbase.util.Byte
import org.apache.hadoop.hbase.util.Pair;
import org.apache.hadoop.hbase.zookeeper.ZKTableReadOnly;
import org.apache.hadoop.hbase.zookeeper.ZooKeeperWatcher;
-import org.junit.*;
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Test;
import org.junit.experimental.categories.Category;
import com.google.protobuf.ServiceException;
@@ -540,6 +544,11 @@ public class TestAdmin {
}
regs.add(entry.getKey());
}
+ if (numRS >= 2) {
+ // Ignore the master region server,
+ // which contains less regions by intention.
+ numRS--;
+ }
float average = (float) expectedRegions/numRS;
int min = (int)Math.floor(average);
int max = (int)Math.ceil(average);
@@ -834,7 +843,7 @@ public class TestAdmin {
* @throws Exception
* @throws IOException
*/
- @Test (timeout=300000)
+ @Test (timeout=400000)
public void testForceSplit() throws Exception {
byte[][] familyNames = new byte[][] { Bytes.toBytes("cf") };
int[] rowCounts = new int[] { 6000 };
@@ -886,7 +895,7 @@ public class TestAdmin {
* @throws Exception
* @throws IOException
*/
- @Test (timeout=300000)
+ @Test (timeout=800000)
public void testForceSplitMultiFamily() throws Exception {
int numVersions = HColumnDescriptor.DEFAULT_VERSIONS;
@@ -973,7 +982,7 @@ public class TestAdmin {
final AtomicInteger count = new AtomicInteger(0);
Thread t = new Thread("CheckForSplit") {
public void run() {
- for (int i = 0; i < 20; i++) {
+ for (int i = 0; i < 45; i++) {
try {
sleep(1000);
} catch (InterruptedException e) {
@@ -1299,7 +1308,7 @@ public class TestAdmin {
HRegionInfo info = null;
HRegionServer rs = TEST_UTIL.getRSForFirstRegionInTable(TABLENAME);
- List<HRegionInfo> onlineRegions = ProtobufUtil.getOnlineRegions(rs);
+ List<HRegionInfo> onlineRegions = ProtobufUtil.getOnlineRegions(rs.getRSRpcServices());
for (HRegionInfo regionInfo : onlineRegions) {
if (!regionInfo.getTable().isSystemTable()) {
info = regionInfo;
@@ -1307,11 +1316,13 @@ public class TestAdmin {
.getServerName().getServerName());
}
}
- boolean isInList = ProtobufUtil.getOnlineRegions(rs).contains(info);
+ boolean isInList = ProtobufUtil.getOnlineRegions(
+ rs.getRSRpcServices()).contains(info);
long timeout = System.currentTimeMillis() + 10000;
while ((System.currentTimeMillis() < timeout) && (isInList)) {
Thread.sleep(100);
- isInList = ProtobufUtil.getOnlineRegions(rs).contains(info);
+ isInList = ProtobufUtil.getOnlineRegions(
+ rs.getRSRpcServices()).contains(info);
}
assertFalse("The region should not be present in online regions list.",
@@ -1325,7 +1336,7 @@ public class TestAdmin {
HRegionInfo info = null;
HRegionServer rs = TEST_UTIL.getRSForFirstRegionInTable(TABLENAME);
- List<HRegionInfo> onlineRegions = ProtobufUtil.getOnlineRegions(rs);
+ List<HRegionInfo> onlineRegions = ProtobufUtil.getOnlineRegions(rs.getRSRpcServices());
for (HRegionInfo regionInfo : onlineRegions) {
if (!regionInfo.isMetaTable()) {
if (regionInfo.getRegionNameAsString().contains("TestHBACloseRegion1")) {
@@ -1339,7 +1350,7 @@ public class TestAdmin {
}
}
}
- onlineRegions = ProtobufUtil.getOnlineRegions(rs);
+ onlineRegions = ProtobufUtil.getOnlineRegions(rs.getRSRpcServices());
assertTrue("The region should be present in online regions list.",
onlineRegions.contains(info));
}
@@ -1352,7 +1363,7 @@ public class TestAdmin {
HRegionInfo info = null;
HRegionServer rs = TEST_UTIL.getRSForFirstRegionInTable(TABLENAME);
- List<HRegionInfo> onlineRegions = ProtobufUtil.getOnlineRegions(rs);
+ List<HRegionInfo> onlineRegions = ProtobufUtil.getOnlineRegions(rs.getRSRpcServices());
for (HRegionInfo regionInfo : onlineRegions) {
if (!regionInfo.isMetaTable()) {
@@ -1364,11 +1375,13 @@ public class TestAdmin {
}
}
- boolean isInList = ProtobufUtil.getOnlineRegions(rs).contains(info);
+ boolean isInList = ProtobufUtil.getOnlineRegions(
+ rs.getRSRpcServices()).contains(info);
long timeout = System.currentTimeMillis() + 10000;
while ((System.currentTimeMillis() < timeout) && (isInList)) {
Thread.sleep(100);
- isInList = ProtobufUtil.getOnlineRegions(rs).contains(info);
+ isInList = ProtobufUtil.getOnlineRegions(
+ rs.getRSRpcServices()).contains(info);
}
assertFalse("The region should not be present in online regions list.",
@@ -1383,7 +1396,7 @@ public class TestAdmin {
HRegionServer rs = TEST_UTIL.getRSForFirstRegionInTable(TABLENAME);
try {
- List<HRegionInfo> onlineRegions = ProtobufUtil.getOnlineRegions(rs);
+ List<HRegionInfo> onlineRegions = ProtobufUtil.getOnlineRegions(rs.getRSRpcServices());
for (HRegionInfo regionInfo : onlineRegions) {
if (!regionInfo.isMetaTable()) {
if (regionInfo.getRegionNameAsString()
@@ -1407,7 +1420,7 @@ public class TestAdmin {
HRegionServer rs = TEST_UTIL.getRSForFirstRegionInTable(TABLENAME);
try {
- List<HRegionInfo> onlineRegions = ProtobufUtil.getOnlineRegions(rs);
+ List<HRegionInfo> onlineRegions = ProtobufUtil.getOnlineRegions(rs.getRSRpcServices());
for (HRegionInfo regionInfo : onlineRegions) {
if (!regionInfo.isMetaTable()) {
if (regionInfo.getRegionNameAsString()
@@ -1430,7 +1443,7 @@ public class TestAdmin {
HRegionInfo info = null;
HRegionServer rs = TEST_UTIL.getRSForFirstRegionInTable(TABLENAME);
- List<HRegionInfo> onlineRegions = ProtobufUtil.getOnlineRegions(rs);
+ List<HRegionInfo> onlineRegions = ProtobufUtil.getOnlineRegions(rs.getRSRpcServices());
for (HRegionInfo regionInfo : onlineRegions) {
if (!regionInfo.isMetaTable()) {
if (regionInfo.getRegionNameAsString().contains("TestHBACloseRegion4")) {
@@ -1444,7 +1457,7 @@ public class TestAdmin {
}
}
}
- onlineRegions = ProtobufUtil.getOnlineRegions(rs);
+ onlineRegions = ProtobufUtil.getOnlineRegions(rs.getRSRpcServices());
assertTrue("The region should be present in online regions list.",
onlineRegions.contains(info));
}
@@ -1683,7 +1696,7 @@ public class TestAdmin {
TEST_UTIL.getHBaseAdmin().createTable(htd);
}
- @Test
+ @Test (timeout=300000)
public void testIsEnabledOrDisabledOnUnknownTable() throws Exception {
try {
admin.isTableEnabled(Bytes.toBytes("unkownTable"));
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestClientScannerRPCTimeout.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestClientScannerRPCTimeout.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestClientScannerRPCTimeout.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestClientScannerRPCTimeout.java Tue Mar 25 19:34:52 2014
@@ -34,6 +34,8 @@ import org.apache.hadoop.hbase.ipc.RpcCl
import org.apache.hadoop.hbase.ipc.RpcServer;
import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.ScanRequest;
import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.ScanResponse;
+import org.apache.hadoop.hbase.regionserver.HRegionServer;
+import org.apache.hadoop.hbase.regionserver.RSRpcServices;
import org.apache.hadoop.hbase.util.Bytes;
import org.apache.log4j.Level;
import org.junit.AfterClass;
@@ -89,7 +91,7 @@ public class TestClientScannerRPCTimeout
putToTable(ht, r2);
putToTable(ht, r3);
LOG.info("Wrote our three values");
- RegionServerWithScanTimeout.seqNoToSleepOn = 1;
+ RSRpcServicesWithScanTimeout.seqNoToSleepOn = 1;
Scan scan = new Scan();
scan.setCaching(1);
ResultScanner scanner = ht.getScanner(scan);
@@ -100,15 +102,15 @@ public class TestClientScannerRPCTimeout
result = scanner.next();
assertTrue((System.currentTimeMillis() - t1) > rpcTimeout);
assertTrue("Expected row: row-2", Bytes.equals(r2, result.getRow()));
- RegionServerWithScanTimeout.seqNoToSleepOn = -1;// No need of sleep
+ RSRpcServicesWithScanTimeout.seqNoToSleepOn = -1;// No need of sleep
result = scanner.next();
assertTrue("Expected row: row-3", Bytes.equals(r3, result.getRow()));
scanner.close();
// test the case that RPC is always timesout
scanner = ht.getScanner(scan);
- RegionServerWithScanTimeout.sleepAlways = true;
- RegionServerWithScanTimeout.tryNumber = 0;
+ RSRpcServicesWithScanTimeout.sleepAlways = true;
+ RSRpcServicesWithScanTimeout.tryNumber = 0;
try {
result = scanner.next();
} catch (IOException ioe) {
@@ -116,8 +118,8 @@ public class TestClientScannerRPCTimeout
LOG.info("Failed after maximal attempts=" + CLIENT_RETRIES_NUMBER, ioe);
}
assertTrue("Expected maximal try number=" + CLIENT_RETRIES_NUMBER
- + ", actual =" + RegionServerWithScanTimeout.tryNumber,
- RegionServerWithScanTimeout.tryNumber <= CLIENT_RETRIES_NUMBER);
+ + ", actual =" + RSRpcServicesWithScanTimeout.tryNumber,
+ RSRpcServicesWithScanTimeout.tryNumber <= CLIENT_RETRIES_NUMBER);
}
private void putToTable(HTable ht, byte[] rowkey) throws IOException {
@@ -127,15 +129,26 @@ public class TestClientScannerRPCTimeout
}
private static class RegionServerWithScanTimeout extends MiniHBaseClusterRegionServer {
+ public RegionServerWithScanTimeout(Configuration conf)
+ throws IOException, InterruptedException {
+ super(conf);
+ }
+
+ protected RSRpcServices createRpcServices() throws IOException {
+ return new RSRpcServicesWithScanTimeout(this);
+ }
+ }
+
+ private static class RSRpcServicesWithScanTimeout extends RSRpcServices {
private long tableScannerId;
private boolean slept;
private static long seqNoToSleepOn = -1;
private static boolean sleepAlways = false;
private static int tryNumber = 0;
- public RegionServerWithScanTimeout(Configuration conf)
- throws IOException, InterruptedException {
- super(conf);
+ public RSRpcServicesWithScanTimeout(HRegionServer rs)
+ throws IOException {
+ super(rs);
}
@Override
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide.java Tue Mar 25 19:34:52 2014
@@ -4158,7 +4158,7 @@ public class TestFromClientSide {
// HBaseAdmin and can connect to the new master;
HBaseAdmin newAdmin = new HBaseAdmin(conn);
assertTrue(newAdmin.tableExists(tableName));
- assert(newAdmin.getClusterStatus().getServersSize() == SLAVES);
+ assertTrue(newAdmin.getClusterStatus().getServersSize() == SLAVES + 1);
}
@Test
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestMultiParallel.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestMultiParallel.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestMultiParallel.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestMultiParallel.java Tue Mar 25 19:34:52 2014
@@ -41,7 +41,6 @@ import org.apache.hadoop.hbase.Waiter;
import org.apache.hadoop.hbase.exceptions.OperationConflictException;
import org.apache.hadoop.hbase.ipc.RpcClient;
import org.apache.hadoop.hbase.ipc.RpcServer;
-import org.apache.hadoop.hbase.protobuf.ProtobufUtil;
import org.apache.hadoop.hbase.util.Bytes;
import org.apache.hadoop.hbase.util.JVMClusterUtil;
import org.apache.hadoop.hbase.util.Threads;
@@ -277,7 +276,7 @@ public class TestMultiParallel {
// after writing successfully. It means the server we aborted is dead
// and detected by matser
while (liveRS.getRegionServer().getNumberOfOnlineRegions() != 0) {
- Thread.sleep(10);
+ Thread.sleep(100);
}
// try putting more keys after the abort. same key/qual... just validating
// no exceptions thrown
@@ -302,17 +301,14 @@ public class TestMultiParallel {
LOG.info("Count=" + count);
Assert.assertEquals("Server count=" + count + ", abort=" + doAbort,
(doAbort ? (liveRScount - 1) : liveRScount), count);
- for (JVMClusterUtil.RegionServerThread t: liveRSs) {
- int regions = ProtobufUtil.getOnlineRegions(t.getRegionServer()).size();
- // Assert.assertTrue("Count of regions=" + regions, regions > 10);
- }
if (doAbort) {
UTIL.getMiniHBaseCluster().waitOnRegionServer(0);
UTIL.waitFor(15 * 1000, new Waiter.Predicate<Exception>() {
@Override
public boolean evaluate() throws Exception {
+ // Master is also a regionserver, so the count is liveRScount
return UTIL.getMiniHBaseCluster().getMaster()
- .getClusterStatus().getServersSize() == (liveRScount - 1);
+ .getClusterStatus().getServersSize() == liveRScount;
}
});
UTIL.waitFor(15 * 1000, UTIL.predicateNoRegionsInTransition());
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestScannersFromClientSide.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestScannersFromClientSide.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestScannersFromClientSide.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestScannersFromClientSide.java Tue Mar 25 19:34:52 2014
@@ -472,7 +472,8 @@ public class TestScannersFromClientSide
byte[] regionName = hri.getRegionName();
int i = cluster.getServerWith(regionName);
HRegionServer rs = cluster.getRegionServer(i);
- ProtobufUtil.closeRegion(rs, rs.getServerName(), regionName, false);
+ ProtobufUtil.closeRegion(
+ rs.getRSRpcServices(), rs.getServerName(), regionName, false);
long startTime = EnvironmentEdgeManager.currentTimeMillis();
long timeOut = 300000;
while (true) {
@@ -492,7 +493,7 @@ public class TestScannersFromClientSide
states.regionOffline(hri);
states.updateRegionState(hri, State.OPENING);
ZKAssign.createNodeOffline(zkw, hri, loc.getServerName());
- ProtobufUtil.openRegion(rs, rs.getServerName(), hri);
+ ProtobufUtil.openRegion(rs.getRSRpcServices(), rs.getServerName(), hri);
startTime = EnvironmentEdgeManager.currentTimeMillis();
while (true) {
if (rs.getOnlineRegion(regionName) != null) {
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestClassLoading.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestClassLoading.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestClassLoading.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestClassLoading.java Tue Mar 25 19:34:52 2014
@@ -525,7 +525,7 @@ public class TestClassLoading {
"[" + masterCoprocessor.getSimpleName() + "]";
String loadedMasterCoprocessors =
java.util.Arrays.toString(
- TEST_UTIL.getHBaseCluster().getMaster().getCoprocessors());
+ TEST_UTIL.getHBaseCluster().getMaster().getMasterCoprocessors());
assertEquals(loadedMasterCoprocessorsVerify, loadedMasterCoprocessors);
}
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestHTableWrapper.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestHTableWrapper.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestHTableWrapper.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestHTableWrapper.java Tue Mar 25 19:34:52 2014
@@ -129,7 +129,7 @@ public class TestHTableWrapper {
@Test
public void testHTableInterfaceMethods() throws Exception {
Configuration conf = util.getConfiguration();
- MasterCoprocessorHost cpHost = util.getMiniHBaseCluster().getMaster().getCoprocessorHost();
+ MasterCoprocessorHost cpHost = util.getMiniHBaseCluster().getMaster().getMasterCoprocessorHost();
Class<?> implClazz = DummyRegionObserver.class;
cpHost.load(implClazz, Coprocessor.PRIORITY_HIGHEST, conf);
CoprocessorEnvironment env = cpHost.findCoprocessorEnvironment(implClazz.getName());
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithAbort.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithAbort.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithAbort.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithAbort.java Tue Mar 25 19:34:52 2014
@@ -160,7 +160,7 @@ public class TestMasterCoprocessorExcept
MiniHBaseCluster cluster = UTIL.getHBaseCluster();
HMaster master = cluster.getMaster();
- MasterCoprocessorHost host = master.getCoprocessorHost();
+ MasterCoprocessorHost host = master.getMasterCoprocessorHost();
BuggyMasterObserver cp = (BuggyMasterObserver)host.findCoprocessor(
BuggyMasterObserver.class.getName());
assertFalse("No table created yet", cp.wasCreateTableCalled());
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithRemove.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithRemove.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithRemove.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithRemove.java Tue Mar 25 19:34:52 2014
@@ -141,7 +141,7 @@ public class TestMasterCoprocessorExcept
MiniHBaseCluster cluster = UTIL.getHBaseCluster();
HMaster master = cluster.getMaster();
- MasterCoprocessorHost host = master.getCoprocessorHost();
+ MasterCoprocessorHost host = master.getMasterCoprocessorHost();
BuggyMasterObserver cp = (BuggyMasterObserver)host.findCoprocessor(
BuggyMasterObserver.class.getName());
assertFalse("No table created yet", cp.wasCreateTableCalled());
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterObserver.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterObserver.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterObserver.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterObserver.java Tue Mar 25 19:34:52 2014
@@ -34,7 +34,16 @@ import java.util.concurrent.CountDownLat
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.hbase.*;
+import org.apache.hadoop.hbase.CoprocessorEnvironment;
+import org.apache.hadoop.hbase.HBaseTestingUtility;
+import org.apache.hadoop.hbase.HColumnDescriptor;
+import org.apache.hadoop.hbase.HRegionInfo;
+import org.apache.hadoop.hbase.HTableDescriptor;
+import org.apache.hadoop.hbase.MediumTests;
+import org.apache.hadoop.hbase.MiniHBaseCluster;
+import org.apache.hadoop.hbase.NamespaceDescriptor;
+import org.apache.hadoop.hbase.ServerName;
+import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.client.HBaseAdmin;
import org.apache.hadoop.hbase.client.HTable;
import org.apache.hadoop.hbase.master.AssignmentManager;
@@ -42,10 +51,10 @@ import org.apache.hadoop.hbase.master.HM
import org.apache.hadoop.hbase.master.MasterCoprocessorHost;
import org.apache.hadoop.hbase.master.RegionPlan;
import org.apache.hadoop.hbase.master.RegionState;
+import org.apache.hadoop.hbase.protobuf.ProtobufUtil;
+import org.apache.hadoop.hbase.protobuf.RequestConverter;
import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.SnapshotDescription;
import org.apache.hadoop.hbase.protobuf.generated.MasterProtos.GetTableDescriptorsRequest;
-import org.apache.hadoop.hbase.protobuf.RequestConverter;
-import org.apache.hadoop.hbase.protobuf.ProtobufUtil;
import org.apache.hadoop.hbase.regionserver.HRegionServer;
import org.apache.hadoop.hbase.util.Bytes;
import org.apache.hadoop.hbase.util.Threads;
@@ -968,7 +977,7 @@ public class TestMasterObserver {
HMaster master = cluster.getMaster();
assertTrue("Master should be active", master.isActiveMaster());
- MasterCoprocessorHost host = master.getCoprocessorHost();
+ MasterCoprocessorHost host = master.getMasterCoprocessorHost();
assertNotNull("CoprocessorHost should not be null", host);
CPMasterObserver cp = (CPMasterObserver)host.findCoprocessor(
CPMasterObserver.class.getName());
@@ -987,7 +996,7 @@ public class TestMasterObserver {
MiniHBaseCluster cluster = UTIL.getHBaseCluster();
HMaster master = cluster.getMaster();
- MasterCoprocessorHost host = master.getCoprocessorHost();
+ MasterCoprocessorHost host = master.getMasterCoprocessorHost();
CPMasterObserver cp = (CPMasterObserver)host.findCoprocessor(
CPMasterObserver.class.getName());
cp.enableBypass(true);
@@ -1147,7 +1156,7 @@ public class TestMasterObserver {
public void testSnapshotOperations() throws Exception {
MiniHBaseCluster cluster = UTIL.getHBaseCluster();
HMaster master = cluster.getMaster();
- MasterCoprocessorHost host = master.getCoprocessorHost();
+ MasterCoprocessorHost host = master.getMasterCoprocessorHost();
CPMasterObserver cp = (CPMasterObserver)host.findCoprocessor(
CPMasterObserver.class.getName());
cp.resetStates();
@@ -1204,7 +1213,7 @@ public class TestMasterObserver {
MiniHBaseCluster cluster = UTIL.getHBaseCluster();
String testNamespace = "observed_ns";
HMaster master = cluster.getMaster();
- MasterCoprocessorHost host = master.getCoprocessorHost();
+ MasterCoprocessorHost host = master.getMasterCoprocessorHost();
CPMasterObserver cp = (CPMasterObserver)host.findCoprocessor(
CPMasterObserver.class.getName());
@@ -1269,7 +1278,7 @@ public class TestMasterObserver {
MiniHBaseCluster cluster = UTIL.getHBaseCluster();
HMaster master = cluster.getMaster();
- MasterCoprocessorHost host = master.getCoprocessorHost();
+ MasterCoprocessorHost host = master.getMasterCoprocessorHost();
CPMasterObserver cp = (CPMasterObserver)host.findCoprocessor(
CPMasterObserver.class.getName());
cp.enableBypass(false);
@@ -1308,8 +1317,8 @@ public class TestMasterObserver {
}
assertTrue("Found server", found);
LOG.info("Found " + destName);
- master.moveRegion(null,RequestConverter.buildMoveRegionRequest(
- firstGoodPair.getKey().getEncodedNameAsBytes(),Bytes.toBytes(destName)));
+ master.getMasterRpcServices().moveRegion(null, RequestConverter.buildMoveRegionRequest(
+ firstGoodPair.getKey().getEncodedNameAsBytes(),Bytes.toBytes(destName)));
assertTrue("Coprocessor should have been called on region move",
cp.wasMoveCalled());
@@ -1334,13 +1343,13 @@ public class TestMasterObserver {
byte[] destRS = Bytes.toBytes(cluster.getRegionServer(1).getServerName().toString());
//Make sure no regions are in transition now
waitForRITtoBeZero(master);
- List<HRegionInfo> openRegions = ProtobufUtil.getOnlineRegions(rs);
+ List<HRegionInfo> openRegions = ProtobufUtil.getOnlineRegions(rs.getRSRpcServices());
int moveCnt = openRegions.size()/2;
for (int i=0; i<moveCnt; i++) {
HRegionInfo info = openRegions.get(i);
if (!info.isMetaTable()) {
- master.moveRegion(null,RequestConverter.buildMoveRegionRequest(
- openRegions.get(i).getEncodedNameAsBytes(), destRS));
+ master.getMasterRpcServices().moveRegion(null, RequestConverter.buildMoveRegionRequest(
+ openRegions.get(i).getEncodedNameAsBytes(), destRS));
}
}
//Make sure no regions are in transition now
@@ -1370,14 +1379,14 @@ public class TestMasterObserver {
MiniHBaseCluster cluster = UTIL.getHBaseCluster();
HMaster master = cluster.getMaster();
- MasterCoprocessorHost host = master.getCoprocessorHost();
+ MasterCoprocessorHost host = master.getMasterCoprocessorHost();
CPMasterObserver cp = (CPMasterObserver)host.findCoprocessor(
CPMasterObserver.class.getName());
cp.resetStates();
GetTableDescriptorsRequest req =
RequestConverter.buildGetTableDescriptorsRequest((List<TableName>)null);
- master.getTableDescriptors(null, req);
+ master.getMasterRpcServices().getTableDescriptors(null, req);
assertTrue("Coprocessor should be called on table descriptors request",
cp.wasGetTableDescriptorsCalled());
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionObserverInterface.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionObserverInterface.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionObserverInterface.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionObserverInterface.java Tue Mar 25 19:34:52 2014
@@ -586,7 +586,7 @@ public class TestRegionObserverInterface
if (!t.isAlive() || t.getRegionServer().isAborted() || t.getRegionServer().isStopping()){
continue;
}
- for (HRegionInfo r : ProtobufUtil.getOnlineRegions(t.getRegionServer())) {
+ for (HRegionInfo r : ProtobufUtil.getOnlineRegions(t.getRegionServer().getRSRpcServices())) {
if (!r.getTable().equals(tableName)) {
continue;
}
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionServerCoprocessorExceptionWithAbort.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionServerCoprocessorExceptionWithAbort.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionServerCoprocessorExceptionWithAbort.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionServerCoprocessorExceptionWithAbort.java Tue Mar 25 19:34:52 2014
@@ -64,7 +64,7 @@ public class TestRegionServerCoprocessor
final HRegionServer regionServer = cluster.getRegionServer(0);
conf.set(CoprocessorHost.REGION_COPROCESSOR_CONF_KEY,
FailedInitializationObserver.class.getName());
- regionServer.getCoprocessorHost().loadSystemCoprocessors(conf,
+ regionServer.getRegionServerCoprocessorHost().loadSystemCoprocessors(conf,
CoprocessorHost.REGION_COPROCESSOR_CONF_KEY);
TEST_UTIL.waitFor(10000, 1000, new Predicate<Exception>() {
@Override
@@ -98,20 +98,16 @@ public class TestRegionServerCoprocessor
// Note which regionServer will abort (after put is attempted).
final HRegionServer regionServer = TEST_UTIL.getRSForFirstRegionInTable(TABLE_NAME);
- boolean threwIOE = false;
try {
final byte[] ROW = Bytes.toBytes("aaa");
Put put = new Put(ROW);
put.add(TEST_FAMILY, ROW, ROW);
table.put(put);
table.flushCommits();
- // We may need two puts to reliably get an exception
- table.put(put);
- table.flushCommits();
} catch (IOException e) {
- threwIOE = true;
- } finally {
- assertTrue("The regionserver should have thrown an exception", threwIOE);
+ // The region server is going to be aborted.
+ // We may get an exception if we retry,
+ // which is not guaranteed.
}
// Wait 10 seconds for the regionserver to abort: expected result is that
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionServerObserver.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionServerObserver.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionServerObserver.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionServerObserver.java Tue Mar 25 19:34:52 2014
@@ -31,17 +31,13 @@ import org.apache.hadoop.hbase.Coprocess
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.HBaseTestingUtility;
import org.apache.hadoop.hbase.HColumnDescriptor;
-import org.apache.hadoop.hbase.HConstants;
-import org.apache.hadoop.hbase.HRegionInfo;
import org.apache.hadoop.hbase.HTableDescriptor;
import org.apache.hadoop.hbase.MediumTests;
import org.apache.hadoop.hbase.MiniHBaseCluster;
import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.catalog.MetaEditor;
-import org.apache.hadoop.hbase.client.Delete;
import org.apache.hadoop.hbase.client.HBaseAdmin;
import org.apache.hadoop.hbase.client.Mutation;
-import org.apache.hadoop.hbase.client.Put;
import org.apache.hadoop.hbase.regionserver.HRegion;
import org.apache.hadoop.hbase.regionserver.HRegionServer;
import org.apache.hadoop.hbase.regionserver.RegionMergeTransaction;
@@ -82,7 +78,7 @@ public class TestRegionServerObserver {
try {
MiniHBaseCluster cluster = TEST_UTIL.getHBaseCluster();
HRegionServer regionServer = cluster.getRegionServer(0);
- RegionServerCoprocessorHost cpHost = regionServer.getCoprocessorHost();
+ RegionServerCoprocessorHost cpHost = regionServer.getRegionServerCoprocessorHost();
Coprocessor coprocessor = cpHost.findCoprocessor(CPRegionServerObserver.class.getName());
CPRegionServerObserver regionServerObserver = (CPRegionServerObserver) coprocessor;
HTableDescriptor desc = new HTableDescriptor(TableName.valueOf(TABLENAME));
@@ -115,7 +111,6 @@ public class TestRegionServerObserver {
private RegionMergeTransaction rmt = null;
private HRegion mergedRegion = null;
- private boolean bypass = false;
private boolean preMergeCalled;
private boolean preMergeBeforePONRCalled;
private boolean preMergeAfterPONRCalled;
@@ -123,10 +118,6 @@ public class TestRegionServerObserver {
private boolean postRollBackMergeCalled;
private boolean postMergeCalled;
- public void enableBypass(boolean bypass) {
- this.bypass = bypass;
- }
-
public void resetStates() {
preMergeCalled = false;
preMergeBeforePONRCalled = false;
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/fs/TestBlockReorder.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/fs/TestBlockReorder.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/fs/TestBlockReorder.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/fs/TestBlockReorder.java Tue Mar 25 19:34:52 2014
@@ -44,7 +44,6 @@ import org.apache.hadoop.hbase.client.Pu
import org.apache.hadoop.hbase.regionserver.HRegionServer;
import org.apache.hadoop.hbase.regionserver.wal.HLogUtil;
import org.apache.hadoop.hbase.util.FSUtils;
-import org.apache.hadoop.hbase.util.Threads;
import org.apache.hadoop.hdfs.DFSClient;
import org.apache.hadoop.hdfs.DistributedFileSystem;
import org.apache.hadoop.hdfs.MiniDFSCluster;
@@ -244,19 +243,18 @@ public class TestBlockReorder {
byte[] sb = "sb".getBytes();
htu.startMiniZKCluster();
- MiniHBaseCluster hbm = htu.startMiniHBaseCluster(1, 1);
+ MiniHBaseCluster hbm = htu.startMiniHBaseCluster(1, 0);
hbm.waitForActiveAndReadyMaster();
- hbm.getRegionServer(0).waitForServerOnline();
+ HRegionServer targetRs = hbm.getMaster();
// We want to have a datanode with the same name as the region server, so
// we're going to get the regionservername, and start a new datanode with this name.
- String host4 = hbm.getRegionServer(0).getServerName().getHostname();
+ String host4 = targetRs.getServerName().getHostname();
LOG.info("Starting a new datanode with the name=" + host4);
cluster.startDataNodes(conf, 1, true, null, new String[]{"/r4"}, new String[]{host4}, null);
cluster.waitClusterUp();
final int repCount = 3;
- HRegionServer targetRs = hbm.getRegionServer(0);
// We use the regionserver file system & conf as we expect it to have the hook.
conf = targetRs.getConfiguration();
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TestLoadIncrementalHFilesSplitRecovery.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TestLoadIncrementalHFilesSplitRecovery.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TestLoadIncrementalHFilesSplitRecovery.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TestLoadIncrementalHFilesSplitRecovery.java Tue Mar 25 19:34:52 2014
@@ -183,10 +183,11 @@ public class TestLoadIncrementalHFilesSp
HRegionServer hrs = util.getRSForFirstRegionInTable(Bytes
.toBytes(table));
- for (HRegionInfo hri : ProtobufUtil.getOnlineRegions(hrs)) {
+ for (HRegionInfo hri :
+ ProtobufUtil.getOnlineRegions(hrs.getRSRpcServices())) {
if (Bytes.equals(hri.getTable().getName(), Bytes.toBytes(table))) {
// splitRegion doesn't work if startkey/endkey are null
- ProtobufUtil.split(hrs, hri, rowkey(ROWCOUNT / 2)); // hard code split
+ ProtobufUtil.split(hrs.getRSRpcServices(), hri, rowkey(ROWCOUNT / 2)); // hard code split
}
}
@@ -194,7 +195,8 @@ public class TestLoadIncrementalHFilesSp
int regions;
do {
regions = 0;
- for (HRegionInfo hri : ProtobufUtil.getOnlineRegions(hrs)) {
+ for (HRegionInfo hri :
+ ProtobufUtil.getOnlineRegions(hrs.getRSRpcServices())) {
if (Bytes.equals(hri.getTable().getName(), Bytes.toBytes(table))) {
regions++;
}
@@ -298,6 +300,7 @@ public class TestLoadIncrementalHFilesSp
fail("doBulkLoad should have thrown an exception");
}
+ @SuppressWarnings("deprecation")
private HConnection getMockedConnection(final Configuration conf)
throws IOException, ServiceException {
HConnection c = Mockito.mock(HConnection.class);
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/MockRegionServer.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/MockRegionServer.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/MockRegionServer.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/MockRegionServer.java Tue Mar 25 19:34:52 2014
@@ -18,23 +18,22 @@
package org.apache.hadoop.hbase.master;
import java.io.IOException;
+import java.net.InetSocketAddress;
import java.util.ArrayList;
import java.util.HashMap;
-import java.net.InetSocketAddress;
import java.util.List;
import java.util.Map;
import java.util.Random;
import java.util.TreeMap;
import java.util.concurrent.ConcurrentSkipListMap;
-import com.google.protobuf.Message;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.hbase.CellScannable;
import org.apache.hadoop.hbase.CellUtil;
-import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.HRegionInfo;
import org.apache.hadoop.hbase.ServerName;
+import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.ZooKeeperConnectionException;
import org.apache.hadoop.hbase.catalog.CatalogTracker;
import org.apache.hadoop.hbase.client.Get;
@@ -84,7 +83,6 @@ import org.apache.hadoop.hbase.protobuf.
import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.MutateResponse;
import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.ScanRequest;
import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.ScanResponse;
-import org.apache.hadoop.hbase.protobuf.generated.RPCProtos;
import org.apache.hadoop.hbase.regionserver.CompactionRequestor;
import org.apache.hadoop.hbase.regionserver.FlushRequester;
import org.apache.hadoop.hbase.regionserver.HRegion;
@@ -546,11 +544,6 @@ ClientProtos.ClientService.BlockingInter
}
@Override
- public int getPriority(RPCProtos.RequestHeader header, Message param) {
- return 0;
- }
-
- @Override
public UpdateFavoredNodesResponse updateFavoredNodes(RpcController controller,
UpdateFavoredNodesRequest request) throws ServiceException {
return null;
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/Mocking.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/Mocking.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/Mocking.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/Mocking.java Tue Mar 25 19:34:52 2014
@@ -73,36 +73,6 @@ public class Mocking {
}
/**
- * Fakes the regionserver-side zk transitions of a region open.
- * @param w ZooKeeperWatcher to use.
- * @param sn Name of the regionserver doing the 'opening'
- * @param hri Region we're 'opening'.
- * @throws KeeperException
- * @throws DeserializationException
- */
- static void fakeRegionServerRegionOpenInZK(HMaster master, final ZooKeeperWatcher w,
- final ServerName sn, final HRegionInfo hri)
- throws KeeperException, DeserializationException, InterruptedException {
- // Wait till the we region is ready to be open in RIT.
- waitForRegionPendingOpenInRIT(master.getAssignmentManager(), hri.getEncodedName());
-
- // Get current versionid else will fail on transition from OFFLINE to OPENING below
- int versionid = ZKAssign.getVersion(w, hri);
- assertNotSame(-1, versionid);
- // This uglyness below is what the openregionhandler on RS side does. I
- // looked at exposing the method over in openregionhandler but its just a
- // one liner and its deep over in another package so just repeat it below.
- versionid = ZKAssign.transitionNode(w, hri, sn,
- EventType.M_ZK_REGION_OFFLINE, EventType.RS_ZK_REGION_OPENING, versionid);
- assertNotSame(-1, versionid);
- // Move znode from OPENING to OPENED as RS does on successful open.
- versionid = ZKAssign.transitionNodeOpened(w, hri, sn, versionid);
- assertNotSame(-1, versionid);
- // We should be done now. The master open handler will notice the
- // transition and remove this regions znode.
- }
-
- /**
* Verifies that the specified region is in the specified state in ZooKeeper.
* <p>
* Returns true if region is in transition and in the specified state in
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestActiveMasterManager.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestActiveMasterManager.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestActiveMasterManager.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestActiveMasterManager.java Tue Mar 25 19:34:52 2014
@@ -86,7 +86,7 @@ public class TestActiveMasterManager {
MonitoredTask status = Mockito.mock(MonitoredTask.class);
clusterStatusTracker.setClusterUp();
- activeMasterManager.blockUntilBecomingActiveMaster(status);
+ activeMasterManager.blockUntilBecomingActiveMaster(100, status);
assertTrue(activeMasterManager.clusterHasActiveMaster.get());
assertMaster(zk, master);
@@ -95,7 +95,7 @@ public class TestActiveMasterManager {
ActiveMasterManager secondActiveMasterManager =
secondDummyMaster.getActiveMasterManager();
assertFalse(secondActiveMasterManager.clusterHasActiveMaster.get());
- activeMasterManager.blockUntilBecomingActiveMaster(status);
+ activeMasterManager.blockUntilBecomingActiveMaster(100, status);
assertTrue(activeMasterManager.clusterHasActiveMaster.get());
assertMaster(zk, master);
}
@@ -130,7 +130,7 @@ public class TestActiveMasterManager {
ClusterStatusTracker clusterStatusTracker =
ms1.getClusterStatusTracker();
clusterStatusTracker.setClusterUp();
- activeMasterManager.blockUntilBecomingActiveMaster(
+ activeMasterManager.blockUntilBecomingActiveMaster(100,
Mockito.mock(MonitoredTask.class));
assertTrue(activeMasterManager.clusterHasActiveMaster.get());
assertMaster(zk, firstMasterAddress);
@@ -212,7 +212,7 @@ public class TestActiveMasterManager {
@Override
public void run() {
- manager.blockUntilBecomingActiveMaster(
+ manager.blockUntilBecomingActiveMaster(100,
Mockito.mock(MonitoredTask.class));
LOG.info("Second master has become the active master!");
isActiveMaster = true;
@@ -308,6 +308,5 @@ public class TestActiveMasterManager {
return activeMasterManager;
}
}
-
}
Modified: hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestCatalogJanitor.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestCatalogJanitor.java?rev=1581479&r1=1581478&r2=1581479&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestCatalogJanitor.java (original)
+++ hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestCatalogJanitor.java Tue Mar 25 19:34:52 2014
@@ -197,7 +197,7 @@ public class TestCatalogJanitor {
private final AssignmentManager asm;
MockMasterServices(final Server server) throws IOException {
- this.mfs = new MasterFileSystem(server, this, false);
+ this.mfs = new MasterFileSystem(server, this);
this.asm = Mockito.mock(AssignmentManager.class);
}
@@ -228,7 +228,7 @@ public class TestCatalogJanitor {
}
@Override
- public MasterCoprocessorHost getCoprocessorHost() {
+ public MasterCoprocessorHost getMasterCoprocessorHost() {
return null;
}