<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Index (Apache HBase 3.0.0-SNAPSHOT Test API)</title>
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
<script type="text/javascript" src="script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="Index (Apache HBase 3.0.0-SNAPSHOT Test API)";
        }
    }
    catch(err) {
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="overview-summary.html">Overview</a></li>
<li>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-tree.html">Tree</a></li>
<li><a href="deprecated-list.html">Deprecated</a></li>
<li class="navBarCell1Rev">Index</li>
<li><a href="help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?index-all.html" target="_top">Frames</a></li>
<li><a href="index-all.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="contentContainer"><a href="#I:A">A</a>&nbsp;<a href="#I:B">B</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:D">D</a>&nbsp;<a href="#I:E">E</a>&nbsp;<a href="#I:F">F</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:H">H</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:J">J</a>&nbsp;<a href="#I:K">K</a>&nbsp;<a href="#I:L">L</a>&nbsp;<a href="#I:M">M</a>&nbsp;<a href="#I:O">O</a>&nbsp;<a href="#I:P">P</a>&nbsp;<a href="#I:R">R</a>&nbsp;<a href="#I:S">S</a>&nbsp;<a href="#I:T">T</a>&nbsp;<a href="#I:U">U</a>&nbsp;<a href="#I:V">V</a>&nbsp;<a href="#I:W">W</a>&nbsp;<a href="#I:Z">Z</a>&nbsp;<a name="I:A">
<!--   -->
</a>
<h2 class="title">A</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#abortMaster-int-">abortMaster(int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Cause a master to exit without shutting down entire cluster.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#abortRegionServer-int-">abortRegionServer(int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Cause a region server to exit doing basic clean up only on its way out.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#assertKVListsEqual-java.lang.String-java.util.List-java.util.List-">assertKVListsEqual(String, List&lt;? extends Cell&gt;, List&lt;? extends Cell&gt;)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#assertRegionOnlyOnServer-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.ServerName-long-">assertRegionOnlyOnServer(RegionInfo, ServerName, long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Check to make sure the region is open on the specified
 region server, but not on any other one.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#assertRegionOnServer-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.ServerName-long-">assertRegionOnServer(RegionInfo, ServerName, long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Due to async racing issue, a region may not be in
  the online region list of a region server yet, after
  the assignment znode is deleted and the new assignment
  is recorded in master.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#assignRegion-org.apache.hadoop.hbase.client.RegionInfo-">assignRegion(RegionInfo)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Uses directly the assignment manager to assign the region.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#available-int-">available(int)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Checks to see if a specific port is available.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#await-long-java.util.function.BooleanSupplier-">await(long, BooleanSupplier)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Await the successful return of <code>condition</code>, sleeping <code>sleepMillis</code> between
 invocations.</div>
</dd>
</dl>
<a name="I:B">
<!--   -->
</a>
<h2 class="title">B</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#BASE_TEST_DIRECTORY_KEY">BASE_TEST_DIRECTORY_KEY</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>
<div class="block">System property key to get base test directory value</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#BLOOM_AND_COMPRESSION_COMBINATIONS">BLOOM_AND_COMPRESSION_COMBINATIONS</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#BOOLEAN_PARAMETERIZED">BOOLEAN_PARAMETERIZED</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>
<div class="block">This is for unit tests parameterized with a two booleans.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/StartMiniClusterOption.html#builder--">builder()</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/StartMiniClusterOption.html" title="class in org.apache.hadoop.hbase">StartMiniClusterOption</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:C">
<!--   -->
</a>
<h2 class="title">C</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#checksumRows-org.apache.hadoop.hbase.client.Table-">checksumRows(Table)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Return an md5 digest of the entire contents of a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#cleanupDataTestDirOnTestFS--">cleanupDataTestDirOnTestFS()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Cleans the test data directory on the test filesystem.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#cleanupDataTestDirOnTestFS-java.lang.String-">cleanupDataTestDirOnTestFS(String)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Cleans a subdirectory under the test data directory on the test filesystem.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#cleanupTestDir--">cleanupTestDir()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html#cleanupTestDir--">cleanupTestDir()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#close--">close()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#closeConnection--">closeConnection()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#closeRegionAndWAL-org.apache.hadoop.hbase.regionserver.Region-">closeRegionAndWAL(Region)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Close both the region <code>r</code> and it's underlying WAL.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#closeRegionAndWAL-org.apache.hadoop.hbase.regionserver.HRegion-">closeRegionAndWAL(HRegion)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Close both the HRegion <code>r</code> and it's underlying WAL.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html#clusterTestDir">clusterTestDir</a></span> - Variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtility</a></dt>
<dd>
<div class="block">Directory (a subdirectory of dataTestDir) used by the dfs cluster if any</div>
</dd>
<dt><a href="org/apache/hadoop/hbase/codec/CodecPerformance.html" title="class in org.apache.hadoop.hbase.codec"><span class="typeNameLink">CodecPerformance</span></a> - Class in <a href="org/apache/hadoop/hbase/codec/package-summary.html">org.apache.hadoop.hbase.codec</a></dt>
<dd>
<div class="block">Do basic codec performance eval.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/codec/CodecPerformance.html#CodecPerformance--">CodecPerformance()</a></span> - Constructor for class org.apache.hadoop.hbase.codec.<a href="org/apache/hadoop/hbase/codec/CodecPerformance.html" title="class in org.apache.hadoop.hbase.codec">CodecPerformance</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#COLUMNS">COLUMNS</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#compact-boolean-">compact(boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Compact all regions in the mini hbase cluster</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#compact-org.apache.hadoop.hbase.TableName-boolean-">compact(TableName, boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Compact all of a table's reagion in the mini hbase cluster</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#compact-boolean-">compact(boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Call flushCache on all regions on all participating regionservers.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#compact-org.apache.hadoop.hbase.TableName-boolean-">compact(TableName, boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Call flushCache on all regions of the specified table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#COMPRESSION_ALGORITHMS">COMPRESSION_ALGORITHMS</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>
<div class="block">Compression algorithms to use in testing</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#COMPRESSION_ALGORITHMS_PARAMETERIZED">COMPRESSION_ALGORITHMS_PARAMETERIZED</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>
<div class="block">Compression algorithms to use in parameterized JUnit 4 tests</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#conf">conf</a></span> - Variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#countRows-org.apache.hadoop.hbase.client.Table-">countRows(Table)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Return the number of rows in the given table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#countRows-org.apache.hadoop.hbase.client.Table-org.apache.hadoop.hbase.client.Scan-">countRows(Table, Scan)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#countRows-org.apache.hadoop.hbase.client.Table-byte:A...-">countRows(Table, byte[]...)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#countRows-org.apache.hadoop.hbase.TableName-">countRows(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Return the number of rows in the given table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#countRows-org.apache.hadoop.hbase.regionserver.Region-">countRows(Region)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#countRows-org.apache.hadoop.hbase.regionserver.Region-org.apache.hadoop.hbase.client.Scan-">countRows(Region, Scan)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#countRows-org.apache.hadoop.hbase.regionserver.InternalScanner-">countRows(InternalScanner)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#countServedRegions--">countServedRegions()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Counts the total numbers of regions being served by the currently online
 region servers by asking each how many regions they have.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createLocalHRegion-org.apache.hadoop.hbase.client.TableDescriptor-byte:A-byte:A-">createLocalHRegion(TableDescriptor, byte[], byte[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create an HRegion that writes to the local tmp dirs</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createLocalHRegion-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.client.TableDescriptor-">createLocalHRegion(RegionInfo, TableDescriptor)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create an HRegion that writes to the local tmp dirs.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createLocalHRegion-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.client.TableDescriptor-org.apache.hadoop.hbase.wal.WAL-">createLocalHRegion(RegionInfo, TableDescriptor, WAL)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create an HRegion that writes to the local tmp dirs with specified wal</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createLocalHRegion-org.apache.hadoop.hbase.TableName-byte:A-byte:A-boolean-org.apache.hadoop.hbase.client.Durability-org.apache.hadoop.hbase.wal.WAL-byte:A...-">createLocalHRegion(TableName, byte[], byte[], boolean, Durability, WAL, byte[]...)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createLocalHRegionWithInMemoryFlags-org.apache.hadoop.hbase.TableName-byte:A-byte:A-boolean-org.apache.hadoop.hbase.client.Durability-org.apache.hadoop.hbase.wal.WAL-boolean:A-byte:A...-">createLocalHRegionWithInMemoryFlags(TableName, byte[], byte[], boolean, Durability, WAL, boolean[], byte[]...)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createMockRegionServerService--">createMockRegionServerService()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a stubbed out RegionServerService, mainly for getting FS.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createMockRegionServerService-org.apache.hadoop.hbase.ipc.RpcServerInterface-">createMockRegionServerService(RpcServerInterface)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a stubbed out RegionServerService, mainly for getting FS.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createMockRegionServerService-org.apache.hadoop.hbase.ServerName-">createMockRegionServerService(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a stubbed out RegionServerService, mainly for getting FS.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createModifyableTableDescriptor-java.lang.String-">createModifyableTableDescriptor(String)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createModifyableTableDescriptor-org.apache.hadoop.hbase.TableName-int-int-int-org.apache.hadoop.hbase.KeepDeletedCells-">createModifyableTableDescriptor(TableName, int, int, int, KeepDeletedCells)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createMultiRegionsInMeta-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.client.TableDescriptor-byte:A:A-">createMultiRegionsInMeta(Configuration, TableDescriptor, byte[][])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create rows in hbase:meta for regions of the specified table with the specified
 start keys.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createMultiRegionTable-org.apache.hadoop.hbase.TableName-byte:A-int-">createMultiRegionTable(TableName, byte[], int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table with multiple regions.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createMultiRegionTable-org.apache.hadoop.hbase.TableName-byte:A:A-">createMultiRegionTable(TableName, byte[][])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table with multiple regions.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createMultiRegionTable-org.apache.hadoop.hbase.TableName-int-byte:A:A-">createMultiRegionTable(TableName, int, byte[][])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table with multiple regions.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createMultiRegionTable-org.apache.hadoop.hbase.TableName-byte:A:A-int-">createMultiRegionTable(TableName, byte[][], int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table with multiple regions.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createMultiRegionTable-org.apache.hadoop.hbase.TableName-byte:A-">createMultiRegionTable(TableName, byte[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table with multiple regions.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createPreSplitLoadTestTable-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.io.compress.Compression.Algorithm-org.apache.hadoop.hbase.io.encoding.DataBlockEncoding-">createPreSplitLoadTestTable(Configuration, TableName, byte[], Compression.Algorithm, DataBlockEncoding)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Creates a pre-split table for load testing.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createPreSplitLoadTestTable-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.io.compress.Compression.Algorithm-org.apache.hadoop.hbase.io.encoding.DataBlockEncoding-int-int-org.apache.hadoop.hbase.client.Durability-">createPreSplitLoadTestTable(Configuration, TableName, byte[], Compression.Algorithm, DataBlockEncoding, int, int, Durability)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Creates a pre-split table for load testing.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createPreSplitLoadTestTable-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.TableName-byte:A:A-org.apache.hadoop.hbase.io.compress.Compression.Algorithm-org.apache.hadoop.hbase.io.encoding.DataBlockEncoding-int-int-org.apache.hadoop.hbase.client.Durability-">createPreSplitLoadTestTable(Configuration, TableName, byte[][], Compression.Algorithm, DataBlockEncoding, int, int, Durability)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Creates a pre-split table for load testing.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createPreSplitLoadTestTable-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.client.TableDescriptor-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">createPreSplitLoadTestTable(Configuration, TableDescriptor, ColumnFamilyDescriptor)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Creates a pre-split table for load testing.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createPreSplitLoadTestTable-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.client.TableDescriptor-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-int-">createPreSplitLoadTestTable(Configuration, TableDescriptor, ColumnFamilyDescriptor, int)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Creates a pre-split table for load testing.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createPreSplitLoadTestTable-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.client.TableDescriptor-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor:A-int-">createPreSplitLoadTestTable(Configuration, TableDescriptor, ColumnFamilyDescriptor[], int)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Creates a pre-split table for load testing.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createPreSplitLoadTestTable-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.client.TableDescriptor-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor:A-org.apache.hadoop.hbase.util.RegionSplitter.SplitAlgorithm-int-">createPreSplitLoadTestTable(Configuration, TableDescriptor, ColumnFamilyDescriptor[], RegionSplitter.SplitAlgorithm, int)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Creates a pre-split table for load testing.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createRandomTable-org.apache.hadoop.hbase.TableName-java.util.Collection-int-int-int-int-int-">createRandomTable(TableName, Collection&lt;String&gt;, int, int, int, int, int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Creates a random table with the given parameters</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createRegionAndWAL-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.fs.Path-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.client.TableDescriptor-">createRegionAndWAL(RegionInfo, Path, Configuration, TableDescriptor)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a region with it's own WAL.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createRegionAndWAL-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.fs.Path-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.client.TableDescriptor-org.apache.hadoop.hbase.io.hfile.BlockCache-">createRegionAndWAL(RegionInfo, Path, Configuration, TableDescriptor, BlockCache)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a region with it's own WAL.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createRegionAndWAL-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.fs.Path-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.client.TableDescriptor-org.apache.hadoop.hbase.mob.MobFileCache-">createRegionAndWAL(RegionInfo, Path, Configuration, TableDescriptor, MobFileCache)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a region with it's own WAL.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createRegionAndWAL-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.fs.Path-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.client.TableDescriptor-boolean-">createRegionAndWAL(RegionInfo, Path, Configuration, TableDescriptor, boolean)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a region with it's own WAL.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createRootDir-boolean-">createRootDir(boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Creates an hbase rootdir in user home directory.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createRootDir--">createRootDir()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Same as <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createRootDir-boolean-"><code>HBaseTestingUtility.createRootDir(boolean create)</code></a>
 except that <code>create</code> flag is false.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#createSubDir-java.lang.String-org.apache.hadoop.fs.Path-java.lang.String-">createSubDir(String, Path, String)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.TableName-java.lang.String-">createTable(TableName, String)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.TableName-java.lang.String:A-">createTable(TableName, String[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.TableName-byte:A-">createTable(TableName, byte[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.TableName-byte:A:A-">createTable(TableName, byte[][])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.TableName-byte:A:A-byte:A:A-">createTable(TableName, byte[][], byte[][])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.TableName-byte:A:A-byte:A:A-int-">createTable(TableName, byte[][], byte[][], int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.TableName-byte:A:A-int-byte:A-byte:A-int-">createTable(TableName, byte[][], int, byte[], byte[], int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A:A-org.apache.hadoop.conf.Configuration-">createTable(TableDescriptor, byte[][], Configuration)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A:A-byte:A:A-org.apache.hadoop.conf.Configuration-">createTable(TableDescriptor, byte[][], byte[][], Configuration)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A:A-byte:A:A-org.apache.hadoop.hbase.regionserver.BloomType-int-org.apache.hadoop.conf.Configuration-">createTable(TableDescriptor, byte[][], byte[][], BloomType, int, Configuration)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A:A-">createTable(TableDescriptor, byte[][])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.TableName-byte:A:A-byte:A:A-int-org.apache.hadoop.conf.Configuration-">createTable(TableName, byte[][], byte[][], int, Configuration)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.TableName-byte:A-int-">createTable(TableName, byte[], int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.TableName-byte:A:A-int-">createTable(TableName, byte[][], int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.TableName-byte:A:A-int-byte:A:A-">createTable(TableName, byte[][], int, byte[][])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.TableName-byte:A:A-int-int-">createTable(TableName, byte[][], int, int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.TableName-byte:A:A-int-int-java.lang.String-">createTable(TableName, byte[][], int, int, String)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.TableName-byte:A:A-int:A-">createTable(TableName, byte[][], int[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTable-org.apache.hadoop.hbase.TableName-byte:A-byte:A:A-">createTable(TableName, byte[], byte[][])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTableDescriptor-org.apache.hadoop.hbase.TableName-int-int-int-org.apache.hadoop.hbase.KeepDeletedCells-">createTableDescriptor(TableName, int, int, int, KeepDeletedCells)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTableDescriptor-org.apache.hadoop.hbase.TableName-">createTableDescriptor(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a table of name <code>name</code>.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTableDescriptor-org.apache.hadoop.hbase.TableName-byte:A-">createTableDescriptor(TableName, byte[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTableDescriptor-org.apache.hadoop.hbase.TableName-byte:A:A-int-">createTableDescriptor(TableName, byte[][], int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTestRegion-java.lang.String-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">createTestRegion(String, ColumnFamilyDescriptor)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createTestRegion-java.lang.String-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-org.apache.hadoop.hbase.io.hfile.BlockCache-">createTestRegion(String, ColumnFamilyDescriptor, BlockCache)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createWal-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.Path-org.apache.hadoop.hbase.client.RegionInfo-">createWal(Configuration, Path, RegionInfo)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create an unmanaged WAL.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#createWALRootDir--">createWALRootDir()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Creates a hbase walDir in the user's home directory.</div>
</dd>
</dl>
<a name="I:D">
<!--   -->
</a>
<h2 class="title">D</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#DEFAULT_BASE_TEST_DIRECTORY">DEFAULT_BASE_TEST_DIRECTORY</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>
<div class="block">Default base directory for test output.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#DEFAULT_REGIONS_PER_SERVER">DEFAULT_REGIONS_PER_SERVER</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">The default number of regions per regionserver when creating a pre-split
 table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#deleteNumericRows-org.apache.hadoop.hbase.client.Table-byte:A-int-int-">deleteNumericRows(Table, byte[], int, int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#deleteTable-org.apache.hadoop.hbase.TableName-">deleteTable(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Drop an existing table</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#deleteTableData-org.apache.hadoop.hbase.TableName-">deleteTableData(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Provide an existing table name to truncate.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#deleteTableIfAny-org.apache.hadoop.hbase.TableName-">deleteTableIfAny(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Drop an existing table</div>
</dd>
</dl>
<a name="I:E">
<!--   -->
</a>
<h2 class="title">E</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#enableDebug-java.lang.Class-">enableDebug(Class&lt;?&gt;)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">In 2.3.0, will be removed in 4.0.0. Only support changing log level on log4j now as
             HBase only uses log4j. You should do this by your own as it you know which log
             framework you are using then set the log level to debug is very easy.</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#ensureSomeNonStoppedRegionServersAvailable-int-">ensureSomeNonStoppedRegionServersAvailable(int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Make sure that at least the specified number of region servers
 are running.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#ensureSomeRegionServersAvailable-int-">ensureSomeRegionServersAvailable(int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Make sure that at least the specified number of region servers
 are running</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#expireMasterSession--">expireMasterSession()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Expire the Master's session</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#expireRegionServerSession-int-">expireRegionServerSession(int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Expire a region server's session</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#expireSession-org.apache.hadoop.hbase.zookeeper.ZKWatcher-">expireSession(ZKWatcher)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#expireSession-org.apache.hadoop.hbase.zookeeper.ZKWatcher-boolean-">expireSession(ZKWatcher, boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Expire a ZooKeeper session as recommended in ZooKeeper documentation
 http://hbase.apache.org/book.html#trouble.zookeeper
 There are issues when doing this:
 [1] http://www.mail-archive.com/dev@zookeeper.apache.org/msg01942.html
 [2] https://issues.apache.org/jira/browse/ZOOKEEPER-1105</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#explainTableAvailability-org.apache.hadoop.hbase.TableName-">explainTableAvailability(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#explainTableState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.TableState.State-">explainTableState(TableName, TableState.State)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:F">
<!--   -->
</a>
<h2 class="title">F</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#fam1">fam1</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#fam2">fam2</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#fam3">fam3</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#findLastTableState-org.apache.hadoop.hbase.TableName-">findLastTableState(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#findRegionsForTable-org.apache.hadoop.hbase.TableName-">findRegionsForTable(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#FIRST_CHAR">FIRST_CHAR</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#flush--">flush()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Flushes all caches in the mini hbase cluster</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#flush-org.apache.hadoop.hbase.TableName-">flush(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Flushes all caches in the mini hbase cluster</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#flushcache--">flushcache()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Call flushCache on all regions on all participating regionservers.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#flushcache-org.apache.hadoop.hbase.TableName-">flushcache(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Call flushCache on all regions of the specified table.</div>
</dd>
</dl>
<a name="I:G">
<!--   -->
</a>
<h2 class="title">G</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#generateColumnDescriptors--">generateColumnDescriptors()</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a set of column descriptors with the combination of compression,
 encoding, bloom codecs available.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#generateColumnDescriptors-java.lang.String-">generateColumnDescriptors(String)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create a set of column descriptors with the combination of compression,
 encoding, bloom codecs available.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getAdmin--">getAdmin()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Returns an Admin instance which is shared between HBaseTestingUtility instance users.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getAllOnlineRegions-org.apache.hadoop.hbase.MiniHBaseCluster-">getAllOnlineRegions(MiniHBaseCluster)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getAsyncConnection--">getAsyncConnection()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Get a shared AsyncClusterConnection to the cluster.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getClosestRowBefore-org.apache.hadoop.hbase.regionserver.Region-byte:A-byte:A-">getClosestRowBefore(Region, byte[], byte[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getClusterKey--">getClusterKey()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getClusterMetrics--">getClusterMetrics()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#getConfiguration--">getConfiguration()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>
<div class="block">Returns this classes's instance of <code>Configuration</code>.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getConfiguration--">getConfiguration()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Returns this classes's instance of <code>Configuration</code>.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getConfiguration--">getConfiguration()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getConnection--">getConnection()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Get a shared Connection to the cluster.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/StartMiniClusterOption.html#getDataNodeHosts--">getDataNodeHosts()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/StartMiniClusterOption.html" title="class in org.apache.hadoop.hbase">StartMiniClusterOption</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#getDataTestDir--">getDataTestDir()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#getDataTestDir-java.lang.String-">getDataTestDir(String)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getDataTestDirOnTestFS--">getDataTestDirOnTestFS()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Returns a Path in the test filesystem, obtained from <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getTestFileSystem--"><code>HBaseTestingUtility.getTestFileSystem()</code></a>
 to write temporary test data.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getDataTestDirOnTestFS-java.lang.String-">getDataTestDirOnTestFS(String)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Returns a Path in the test filesystem, obtained from <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getTestFileSystem--"><code>HBaseTestingUtility.getTestFileSystem()</code></a>
 to write temporary test data.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getDefaultRootDirPath-boolean-">getDefaultRootDirPath(boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Returns the path to the default root dir the minicluster uses.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getDefaultRootDirPath--">getDefaultRootDirPath()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Same as {<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getDefaultRootDirPath-boolean-"><code>HBaseTestingUtility.getDefaultRootDirPath(boolean create)</code></a>
 except that <code>create</code> flag is false.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getDFSCluster--">getDFSCluster()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getDifferentUser-org.apache.hadoop.conf.Configuration-java.lang.String-">getDifferentUser(Configuration, String)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">This method clones the passed <code>c</code> configuration setting a new
 user into the clone.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getFromStoreFile-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.client.Get-">getFromStoreFile(HStore, Get)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Do a small get/scan against one store.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getFromStoreFile-org.apache.hadoop.hbase.regionserver.HStore-byte:A-java.util.NavigableSet-">getFromStoreFile(HStore, byte[], NavigableSet&lt;byte[]&gt;)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Do a small get/scan against one store.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getHBaseCluster--">getHBaseCluster()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Get the Mini HBase cluster.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getHBaseClusterInterface--">getHBaseClusterInterface()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Returns the HBaseCluster instance.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getHbck--">getHbck()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Returns an <a href="../apidocs/org/apache/hadoop/hbase/client/Hbck.html?is-external=true" title="class or interface in org.apache.hadoop.hbase.client"><code>Hbck</code></a> instance.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getLiveMasterThreads--">getLiveMasterThreads()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getLiveRegionServerThreads--">getLiveRegionServerThreads()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getMaster--">getMaster()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Returns the current active master, if available.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getMaster-int-">getMaster(int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Returns the master at the specified index, if available.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/StartMiniClusterOption.html#getMasterClass--">getMasterClass()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/StartMiniClusterOption.html" title="class in org.apache.hadoop.hbase">StartMiniClusterOption</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getMasterIndex-org.apache.hadoop.hbase.ServerName-">getMasterIndex(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getMasterThread--">getMasterThread()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Returns the current active master thread, if available.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getMasterThreads--">getMasterThreads()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getMetaRSPort-org.apache.hadoop.hbase.client.Connection-">getMetaRSPort(Connection)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getMetaTableRows--">getMetaTableRows()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Returns all rows from the hbase:meta table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getMetaTableRows-org.apache.hadoop.hbase.TableName-">getMetaTableRows(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Returns all rows from the hbase:meta table for a given user table</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getMiniHBaseCluster--">getMiniHBaseCluster()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/StartMiniClusterOption.html#getNumAlwaysStandByMasters--">getNumAlwaysStandByMasters()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/StartMiniClusterOption.html" title="class in org.apache.hadoop.hbase">StartMiniClusterOption</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/StartMiniClusterOption.html#getNumDataNodes--">getNumDataNodes()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/StartMiniClusterOption.html" title="class in org.apache.hadoop.hbase">StartMiniClusterOption</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getNumHFiles-org.apache.hadoop.hbase.TableName-byte:A-">getNumHFiles(TableName, byte[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getNumHFilesForRS-org.apache.hadoop.hbase.regionserver.HRegionServer-org.apache.hadoop.hbase.TableName-byte:A-">getNumHFilesForRS(HRegionServer, TableName, byte[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getNumLiveRegionServers--">getNumLiveRegionServers()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/StartMiniClusterOption.html#getNumMasters--">getNumMasters()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/StartMiniClusterOption.html" title="class in org.apache.hadoop.hbase">StartMiniClusterOption</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/StartMiniClusterOption.html#getNumRegionServers--">getNumRegionServers()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/StartMiniClusterOption.html" title="class in org.apache.hadoop.hbase">StartMiniClusterOption</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/StartMiniClusterOption.html#getNumZkServers--">getNumZkServers()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/StartMiniClusterOption.html" title="class in org.apache.hadoop.hbase">StartMiniClusterOption</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getOtherRegionServer-org.apache.hadoop.hbase.regionserver.HRegionServer-">getOtherRegionServer(HRegionServer)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#getRandomDir--">getRandomDir()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#getRandomUUID--">getRandomUUID()</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getRegions-byte:A-">getRegions(byte[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getRegions-org.apache.hadoop.hbase.TableName-">getRegions(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getRegionServer-int-">getRegionServer(int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Grab a numbered region server of your choice.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getRegionServer-org.apache.hadoop.hbase.ServerName-">getRegionServer(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getRegionServerIndex-org.apache.hadoop.hbase.ServerName-">getRegionServerIndex(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getRegionServerThreads--">getRegionServerThreads()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getRegionSplitStartKeys-byte:A-byte:A-int-">getRegionSplitStartKeys(byte[], byte[], int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create region split keys between startkey and endKey</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/StartMiniClusterOption.html#getRsClass--">getRsClass()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/StartMiniClusterOption.html" title="class in org.apache.hadoop.hbase">StartMiniClusterOption</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getRSForFirstRegionInTable-org.apache.hadoop.hbase.TableName-">getRSForFirstRegionInTable(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Tool to get the reference to the region server object that holds the
 region of the specified user table.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/StartMiniClusterOption.html#getRsPorts--">getRsPorts()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/StartMiniClusterOption.html" title="class in org.apache.hadoop.hbase">StartMiniClusterOption</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getServerHoldingRegion-org.apache.hadoop.hbase.TableName-byte:A-">getServerHoldingRegion(TableName, byte[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getServerWith-byte:A-">getServerWith(byte[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Get the location of the specified region</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#getServerWithMeta--">getServerWithMeta()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getSplittableRegion-org.apache.hadoop.hbase.TableName-int-">getSplittableRegion(TableName, int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Retrieves a splittable region randomly from tableName</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getSupportedCompressionAlgorithms--">getSupportedCompressionAlgorithms()</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Get supported compression algorithms.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#getTestFileSystem--">getTestFileSystem()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html#getZkCluster--">getZkCluster()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html#getZooKeeperWatcher--">getZooKeeperWatcher()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtility</a></dt>
<dd>
<div class="block">Returns a ZKWatcher instance.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html#getZooKeeperWatcher-org.apache.hadoop.hbase.HBaseZKTestingUtility-">getZooKeeperWatcher(HBaseZKTestingUtility)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtility</a></dt>
<dd>
<div class="block">Gets a ZKWatcher.</div>
</dd>
</dl>
<a name="I:H">
<!--   -->
</a>
<h2 class="title">H</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#hbaseCluster">hbaseCluster</a></span> - Variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase"><span class="typeNameLink">HBaseCommonTestingUtility</span></a> - Class in <a href="org/apache/hadoop/hbase/package-summary.html">org.apache.hadoop.hbase</a></dt>
<dd>
<div class="block">Common helpers for testing HBase that do not depend on specific server/etc.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#HBaseCommonTestingUtility--">HBaseCommonTestingUtility()</a></span> - Constructor for class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#HBaseCommonTestingUtility-org.apache.hadoop.conf.Configuration-">HBaseCommonTestingUtility(Configuration)</a></span> - Constructor for class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase"><span class="typeNameLink">HBaseTestingUtility</span></a> - Class in <a href="org/apache/hadoop/hbase/package-summary.html">org.apache.hadoop.hbase</a></dt>
<dd>
<div class="block">Facility for testing HBase.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#HBaseTestingUtility--">HBaseTestingUtility()</a></span> - Constructor for class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create an HBaseTestingUtility using a default configuration.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#HBaseTestingUtility-org.apache.hadoop.conf.Configuration-">HBaseTestingUtility(Configuration)</a></span> - Constructor for class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Create an HBaseTestingUtility using a given configuration.</div>
</dd>
<dt><a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html" title="class in org.apache.hadoop.hbase"><span class="typeNameLink">HBaseZKTestingUtility</span></a> - Class in <a href="org/apache/hadoop/hbase/package-summary.html">org.apache.hadoop.hbase</a></dt>
<dd>
<div class="block">Helpers for testing HBase that do not depend on specific server/etc.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html#HBaseZKTestingUtility--">HBaseZKTestingUtility()</a></span> - Constructor for class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html#HBaseZKTestingUtility-org.apache.hadoop.conf.Configuration-">HBaseZKTestingUtility(Configuration)</a></span> - Constructor for class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtility</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:I">
<!--   -->
</a>
<h2 class="title">I</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#invalidateConnection--">invalidateConnection()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Resets the connections so that the next time getConnection() is called, a new connection is
 created.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/StartMiniClusterOption.html#isCreateRootDir--">isCreateRootDir()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/StartMiniClusterOption.html" title="class in org.apache.hadoop.hbase">StartMiniClusterOption</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/StartMiniClusterOption.html#isCreateWALDir--">isCreateWALDir()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/StartMiniClusterOption.html" title="class in org.apache.hadoop.hbase">StartMiniClusterOption</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#isKilledRS-org.apache.hadoop.hbase.ServerName-">isKilledRS(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#isNewVersionBehaviorEnabled--">isNewVersionBehaviorEnabled()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Check whether the tests should assume NEW_VERSION_BEHAVIOR when creating
  new column families.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#isReadShortCircuitOn--">isReadShortCircuitOn()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Get the HBase setting for dfs.client.read.shortcircuit from the conf or a system property.</div>
</dd>
</dl>
<a name="I:J">
<!--   -->
</a>
<h2 class="title">J</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#join--">join()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Wait for Mini HBase Cluster to shut down.</div>
</dd>
</dl>
<a name="I:K">
<!--   -->
</a>
<h2 class="title">K</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#KEYS">KEYS</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#KEYS_FOR_HBA_CREATE_TABLE">KEYS_FOR_HBA_CREATE_TABLE</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#killAll--">killAll()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Do a simulated kill all masters and regionservers.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#killDataNode-org.apache.hadoop.hbase.ServerName-">killDataNode(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#killMaster-org.apache.hadoop.hbase.ServerName-">killMaster(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#killMiniHBaseCluster--">killMiniHBaseCluster()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Abruptly Shutdown HBase mini cluster.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#killNameNode-org.apache.hadoop.hbase.ServerName-">killNameNode(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#killRegionServer-org.apache.hadoop.hbase.ServerName-">killRegionServer(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#killZkNode-org.apache.hadoop.hbase.ServerName-">killZkNode(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:L">
<!--   -->
</a>
<h2 class="title">L</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#LAST_CHAR">LAST_CHAR</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#loadNumericRows-org.apache.hadoop.hbase.client.Table-byte:A-int-int-">loadNumericRows(Table, byte[], int, int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#loadRandomRows-org.apache.hadoop.hbase.client.Table-byte:A-int-int-">loadRandomRows(Table, byte[], int, int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#loadRegion-org.apache.hadoop.hbase.regionserver.HRegion-byte:A-">loadRegion(HRegion, byte[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#loadRegion-org.apache.hadoop.hbase.regionserver.Region-byte:A-">loadRegion(Region, byte[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#loadRegion-org.apache.hadoop.hbase.regionserver.HRegion-byte:A-boolean-">loadRegion(HRegion, byte[], boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Load region with rows from 'aaa' to 'zzz'.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#loadTable-org.apache.hadoop.hbase.client.Table-byte:A-">loadTable(Table, byte[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Load table with rows from 'aaa' to 'zzz'.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#loadTable-org.apache.hadoop.hbase.client.Table-byte:A-boolean-">loadTable(Table, byte[], boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Load table with rows from 'aaa' to 'zzz'.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#loadTable-org.apache.hadoop.hbase.client.Table-byte:A:A-">loadTable(Table, byte[][])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Load table of multiple column families with rows from 'aaa' to 'zzz'.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#loadTable-org.apache.hadoop.hbase.client.Table-byte:A:A-byte:A-">loadTable(Table, byte[][], byte[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Load table of multiple column families with rows from 'aaa' to 'zzz'.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#loadTable-org.apache.hadoop.hbase.client.Table-byte:A:A-byte:A-boolean-">loadTable(Table, byte[][], byte[], boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Load table of multiple column families with rows from 'aaa' to 'zzz'.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/codec/CodecPerformance.html#LOG">LOG</a></span> - Static variable in class org.apache.hadoop.hbase.codec.<a href="org/apache/hadoop/hbase/codec/CodecPerformance.html" title="class in org.apache.hadoop.hbase.codec">CodecPerformance</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">LOG variable would be made private. since 1.2, remove in 3.0</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#LOG">LOG</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:M">
<!--   -->
</a>
<h2 class="title">M</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/codec/CodecPerformance.html#main-java.lang.String:A-">main(String[])</a></span> - Static method in class org.apache.hadoop.hbase.codec.<a href="org/apache/hadoop/hbase/codec/CodecPerformance.html" title="class in org.apache.hadoop.hbase.codec">CodecPerformance</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#MEMSTORETS_TAGS_PARAMETRIZED">MEMSTORETS_TAGS_PARAMETRIZED</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">This is for unit tests parameterized with a single boolean.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#memStoreTSTagsAndOffheapCombination--">memStoreTSTagsAndOffheapCombination()</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase"><span class="typeNameLink">MiniHBaseCluster</span></a> - Class in <a href="org/apache/hadoop/hbase/package-summary.html">org.apache.hadoop.hbase</a></dt>
<dd>
<div class="block">This class creates a single process HBase cluster.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#MiniHBaseCluster-org.apache.hadoop.conf.Configuration-int-">MiniHBaseCluster(Configuration, int)</a></span> - Constructor for class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Start a MiniHBaseCluster.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#MiniHBaseCluster-org.apache.hadoop.conf.Configuration-int-int-">MiniHBaseCluster(Configuration, int, int)</a></span> - Constructor for class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Start a MiniHBaseCluster.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#MiniHBaseCluster-org.apache.hadoop.conf.Configuration-int-int-java.lang.Class-java.lang.Class-">MiniHBaseCluster(Configuration, int, int, Class&lt;? extends HMaster&gt;, Class&lt;? extends MiniHBaseCluster.MiniHBaseClusterRegionServer&gt;)</a></span> - Constructor for class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Start a MiniHBaseCluster.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#MiniHBaseCluster-org.apache.hadoop.conf.Configuration-int-int-int-java.util.List-java.lang.Class-java.lang.Class-">MiniHBaseCluster(Configuration, int, int, int, List&lt;Integer&gt;, Class&lt;? extends HMaster&gt;, Class&lt;? extends MiniHBaseCluster.MiniHBaseClusterRegionServer&gt;)</a></span> - Constructor for class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#modifyTableSync-org.apache.hadoop.hbase.client.Admin-org.apache.hadoop.hbase.client.TableDescriptor-">modifyTableSync(Admin, TableDescriptor)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0. Just use
   <a href="../apidocs/org/apache/hadoop/hbase/client/Admin.html?is-external=true#modifyTable-org.apache.hadoop.hbase.client.TableDescriptor-" title="class or interface in org.apache.hadoop.hbase.client"><code>Admin.modifyTable(TableDescriptor)</code></a> directly as it is synchronous now.</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#moveRegionAndWait-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.ServerName-">moveRegionAndWait(RegionInfo, ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Move region to destination server and wait till region is completely moved and online</div>
</dd>
</dl>
<a name="I:O">
<!--   -->
</a>
<h2 class="title">O</h2>
<dl>
<dt><a href="org/apache/hadoop/hbase/package-summary.html">org.apache.hadoop.hbase</a> - package org.apache.hadoop.hbase</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/backup/package-summary.html">org.apache.hadoop.hbase.backup</a> - package org.apache.hadoop.hbase.backup</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/chaos/actions/package-summary.html">org.apache.hadoop.hbase.chaos.actions</a> - package org.apache.hadoop.hbase.chaos.actions</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/chaos/factories/package-summary.html">org.apache.hadoop.hbase.chaos.factories</a> - package org.apache.hadoop.hbase.chaos.factories</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/chaos/monkies/package-summary.html">org.apache.hadoop.hbase.chaos.monkies</a> - package org.apache.hadoop.hbase.chaos.monkies</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/chaos/policies/package-summary.html">org.apache.hadoop.hbase.chaos.policies</a> - package org.apache.hadoop.hbase.chaos.policies</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/chaos/util/package-summary.html">org.apache.hadoop.hbase.chaos.util</a> - package org.apache.hadoop.hbase.chaos.util</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/client/package-summary.html">org.apache.hadoop.hbase.client</a> - package org.apache.hadoop.hbase.client</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/client/example/package-summary.html">org.apache.hadoop.hbase.client.example</a> - package org.apache.hadoop.hbase.client.example</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/client/hamcrest/package-summary.html">org.apache.hadoop.hbase.client.hamcrest</a> - package org.apache.hadoop.hbase.client.hamcrest</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/client/locking/package-summary.html">org.apache.hadoop.hbase.client.locking</a> - package org.apache.hadoop.hbase.client.locking</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/client/procedure/package-summary.html">org.apache.hadoop.hbase.client.procedure</a> - package org.apache.hadoop.hbase.client.procedure</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/client/replication/package-summary.html">org.apache.hadoop.hbase.client.replication</a> - package org.apache.hadoop.hbase.client.replication</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/codec/package-summary.html">org.apache.hadoop.hbase.codec</a> - package org.apache.hadoop.hbase.codec</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/conf/package-summary.html">org.apache.hadoop.hbase.conf</a> - package org.apache.hadoop.hbase.conf</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/coprocessor/package-summary.html">org.apache.hadoop.hbase.coprocessor</a> - package org.apache.hadoop.hbase.coprocessor</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/errorhandling/package-summary.html">org.apache.hadoop.hbase.errorhandling</a> - package org.apache.hadoop.hbase.errorhandling</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/exceptions/package-summary.html">org.apache.hadoop.hbase.exceptions</a> - package org.apache.hadoop.hbase.exceptions</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/favored/package-summary.html">org.apache.hadoop.hbase.favored</a> - package org.apache.hadoop.hbase.favored</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/filter/package-summary.html">org.apache.hadoop.hbase.filter</a> - package org.apache.hadoop.hbase.filter</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/hbtop/package-summary.html">org.apache.hadoop.hbase.hbtop</a> - package org.apache.hadoop.hbase.hbtop</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/hbtop/field/package-summary.html">org.apache.hadoop.hbase.hbtop.field</a> - package org.apache.hadoop.hbase.hbtop.field</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/hbtop/mode/package-summary.html">org.apache.hadoop.hbase.hbtop.mode</a> - package org.apache.hadoop.hbase.hbtop.mode</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/hbtop/screen/field/package-summary.html">org.apache.hadoop.hbase.hbtop.screen.field</a> - package org.apache.hadoop.hbase.hbtop.screen.field</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/hbtop/screen/help/package-summary.html">org.apache.hadoop.hbase.hbtop.screen.help</a> - package org.apache.hadoop.hbase.hbtop.screen.help</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/hbtop/screen/mode/package-summary.html">org.apache.hadoop.hbase.hbtop.screen.mode</a> - package org.apache.hadoop.hbase.hbtop.screen.mode</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/hbtop/screen/top/package-summary.html">org.apache.hadoop.hbase.hbtop.screen.top</a> - package org.apache.hadoop.hbase.hbtop.screen.top</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/hbtop/terminal/impl/package-summary.html">org.apache.hadoop.hbase.hbtop.terminal.impl</a> - package org.apache.hadoop.hbase.hbtop.terminal.impl</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/http/package-summary.html">org.apache.hadoop.hbase.http</a> - package org.apache.hadoop.hbase.http</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/http/conf/package-summary.html">org.apache.hadoop.hbase.http.conf</a> - package org.apache.hadoop.hbase.http.conf</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/http/jmx/package-summary.html">org.apache.hadoop.hbase.http.jmx</a> - package org.apache.hadoop.hbase.http.jmx</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/http/log/package-summary.html">org.apache.hadoop.hbase.http.log</a> - package org.apache.hadoop.hbase.http.log</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/http/resource/package-summary.html">org.apache.hadoop.hbase.http.resource</a> - package org.apache.hadoop.hbase.http.resource</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/http/ssl/package-summary.html">org.apache.hadoop.hbase.http.ssl</a> - package org.apache.hadoop.hbase.http.ssl</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/io/package-summary.html">org.apache.hadoop.hbase.io</a> - package org.apache.hadoop.hbase.io</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/io/asyncfs/package-summary.html">org.apache.hadoop.hbase.io.asyncfs</a> - package org.apache.hadoop.hbase.io.asyncfs</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/io/crypto/package-summary.html">org.apache.hadoop.hbase.io.crypto</a> - package org.apache.hadoop.hbase.io.crypto</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/io/crypto/aes/package-summary.html">org.apache.hadoop.hbase.io.crypto.aes</a> - package org.apache.hadoop.hbase.io.crypto.aes</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/io/encoding/package-summary.html">org.apache.hadoop.hbase.io.encoding</a> - package org.apache.hadoop.hbase.io.encoding</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/io/hadoopbackport/package-summary.html">org.apache.hadoop.hbase.io.hadoopbackport</a> - package org.apache.hadoop.hbase.io.hadoopbackport</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/io/hfile/package-summary.html">org.apache.hadoop.hbase.io.hfile</a> - package org.apache.hadoop.hbase.io.hfile</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/io/util/package-summary.html">org.apache.hadoop.hbase.io.util</a> - package org.apache.hadoop.hbase.io.util</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/ipc/package-summary.html">org.apache.hadoop.hbase.ipc</a> - package org.apache.hadoop.hbase.ipc</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/logging/package-summary.html">org.apache.hadoop.hbase.logging</a> - package org.apache.hadoop.hbase.logging</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/mapred/package-summary.html">org.apache.hadoop.hbase.mapred</a> - package org.apache.hadoop.hbase.mapred</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/mapreduce/package-summary.html">org.apache.hadoop.hbase.mapreduce</a> - package org.apache.hadoop.hbase.mapreduce</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/master/package-summary.html">org.apache.hadoop.hbase.master</a> - package org.apache.hadoop.hbase.master</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/metrics/package-summary.html">org.apache.hadoop.hbase.metrics</a> - package org.apache.hadoop.hbase.metrics</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/mob/package-summary.html">org.apache.hadoop.hbase.mob</a> - package org.apache.hadoop.hbase.mob</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/mttr/package-summary.html">org.apache.hadoop.hbase.mttr</a> - package org.apache.hadoop.hbase.mttr</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/namequeues/package-summary.html">org.apache.hadoop.hbase.namequeues</a> - package org.apache.hadoop.hbase.namequeues</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/namespace/package-summary.html">org.apache.hadoop.hbase.namespace</a> - package org.apache.hadoop.hbase.namespace</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/net/package-summary.html">org.apache.hadoop.hbase.net</a> - package org.apache.hadoop.hbase.net</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/nio/package-summary.html">org.apache.hadoop.hbase.nio</a> - package org.apache.hadoop.hbase.nio</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/quotas/package-summary.html">org.apache.hadoop.hbase.quotas</a> - package org.apache.hadoop.hbase.quotas</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/quotas/policies/package-summary.html">org.apache.hadoop.hbase.quotas.policies</a> - package org.apache.hadoop.hbase.quotas.policies</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/regionserver/package-summary.html">org.apache.hadoop.hbase.regionserver</a> - package org.apache.hadoop.hbase.regionserver</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/regionserver/querymatcher/package-summary.html">org.apache.hadoop.hbase.regionserver.querymatcher</a> - package org.apache.hadoop.hbase.regionserver.querymatcher</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/regionserver/throttle/package-summary.html">org.apache.hadoop.hbase.regionserver.throttle</a> - package org.apache.hadoop.hbase.regionserver.throttle</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/regionserver/wal/package-summary.html">org.apache.hadoop.hbase.regionserver.wal</a> - package org.apache.hadoop.hbase.regionserver.wal</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/replication/package-summary.html">org.apache.hadoop.hbase.replication</a> - package org.apache.hadoop.hbase.replication</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/rest/package-summary.html">org.apache.hadoop.hbase.rest</a> - package org.apache.hadoop.hbase.rest</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/rest/client/package-summary.html">org.apache.hadoop.hbase.rest.client</a> - package org.apache.hadoop.hbase.rest.client</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/rsgroup/package-summary.html">org.apache.hadoop.hbase.rsgroup</a> - package org.apache.hadoop.hbase.rsgroup</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/security/package-summary.html">org.apache.hadoop.hbase.security</a> - package org.apache.hadoop.hbase.security</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/shaded/protobuf/package-summary.html">org.apache.hadoop.hbase.shaded.protobuf</a> - package org.apache.hadoop.hbase.shaded.protobuf</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/snapshot/package-summary.html">org.apache.hadoop.hbase.snapshot</a> - package org.apache.hadoop.hbase.snapshot</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/test/package-summary.html">org.apache.hadoop.hbase.test</a> - package org.apache.hadoop.hbase.test</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/testclassification/package-summary.html">org.apache.hadoop.hbase.testclassification</a> - package org.apache.hadoop.hbase.testclassification</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/thrift/package-summary.html">org.apache.hadoop.hbase.thrift</a> - package org.apache.hadoop.hbase.thrift</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/tool/coprocessor/package-summary.html">org.apache.hadoop.hbase.tool.coprocessor</a> - package org.apache.hadoop.hbase.tool.coprocessor</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/types/package-summary.html">org.apache.hadoop.hbase.types</a> - package org.apache.hadoop.hbase.types</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/util/package-summary.html">org.apache.hadoop.hbase.util</a> - package org.apache.hadoop.hbase.util</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/util/compaction/package-summary.html">org.apache.hadoop.hbase.util.compaction</a> - package org.apache.hadoop.hbase.util.compaction</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/util/hbck/package-summary.html">org.apache.hadoop.hbase.util.hbck</a> - package org.apache.hadoop.hbase.util.hbck</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/wal/package-summary.html">org.apache.hadoop.hbase.wal</a> - package org.apache.hadoop.hbase.wal</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hadoop/hbase/zookeeper/package-summary.html">org.apache.hadoop.hbase.zookeeper</a> - package org.apache.hadoop.hbase.zookeeper</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hbase/archetypes/exemplars/client/package-summary.html">org.apache.hbase.archetypes.exemplars.client</a> - package org.apache.hbase.archetypes.exemplars.client</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hbase/archetypes/exemplars/shaded_client/package-summary.html">org.apache.hbase.archetypes.exemplars.shaded_client</a> - package org.apache.hbase.archetypes.exemplars.shaded_client</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/hbase/shaded/package-summary.html">org.apache.hbase.shaded</a> - package org.apache.hbase.shaded</dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:P">
<!--   -->
</a>
<h2 class="title">P</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#predicateNoRegionsInTransition--">predicateNoRegionsInTransition()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Returns a <a href="../apidocs/org/apache/hadoop/hbase/Waiter.Predicate.html?is-external=true" title="class or interface in org.apache.hadoop.hbase"><code>Waiter.Predicate</code></a> for checking that there are no regions in transition in master</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#predicateTableAvailable-org.apache.hadoop.hbase.TableName-">predicateTableAvailable(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Returns a <a href="../apidocs/org/apache/hadoop/hbase/Waiter.Predicate.html?is-external=true" title="class or interface in org.apache.hadoop.hbase"><code>Waiter.Predicate</code></a> for checking that table is enabled</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#predicateTableDisabled-org.apache.hadoop.hbase.TableName-">predicateTableDisabled(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Returns a <a href="../apidocs/org/apache/hadoop/hbase/Waiter.Predicate.html?is-external=true" title="class or interface in org.apache.hadoop.hbase"><code>Waiter.Predicate</code></a> for checking that table is enabled</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#predicateTableEnabled-org.apache.hadoop.hbase.TableName-">predicateTableEnabled(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Returns a <a href="../apidocs/org/apache/hadoop/hbase/Waiter.Predicate.html?is-external=true" title="class or interface in org.apache.hadoop.hbase"><code>Waiter.Predicate</code></a> for checking that table is enabled</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#PRESPLIT_TEST_TABLE">PRESPLIT_TEST_TABLE</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#PRESPLIT_TEST_TABLE_KEY">PRESPLIT_TEST_TABLE_KEY</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:R">
<!--   -->
</a>
<h2 class="title">R</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#randomFreePort--">randomFreePort()</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#randomFreePort--">randomFreePort()</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#randomMultiCastAddress--">randomMultiCastAddress()</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#REGIONS_PER_SERVER_KEY">REGIONS_PER_SERVER_KEY</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#restartHBaseCluster-int-">restartHBaseCluster(int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Starts the hbase cluster up again after shutting it down previously in a
 test.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#restartHBaseCluster-int-java.util.List-">restartHBaseCluster(int, List&lt;Integer&gt;)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#restartHBaseCluster-org.apache.hadoop.hbase.StartMiniClusterOption-">restartHBaseCluster(StartMiniClusterOption)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#resumeRegionServer-org.apache.hadoop.hbase.ServerName-">resumeRegionServer(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#resumeRegionServer-int-">resumeRegionServer(int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Resume the specified region server</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#ROWS">ROWS</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">All the row values for the data loaded by <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#loadTable-org.apache.hadoop.hbase.client.Table-byte:A-"><code>HBaseTestingUtility.loadTable(Table, byte[])</code></a></div>
</dd>
</dl>
<a name="I:S">
<!--   -->
</a>
<h2 class="title">S</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#safeGetAsStr-java.util.List-int-">safeGetAsStr(List&lt;T&gt;, int)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#setDFSCluster-org.apache.hadoop.hdfs.MiniDFSCluster-">setDFSCluster(MiniDFSCluster)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#setDFSCluster-org.apache.hadoop.hdfs.MiniDFSCluster-boolean-">setDFSCluster(MiniDFSCluster, boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Set the MiniDFSCluster</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#setFileSystemURI-java.lang.String-">setFileSystemURI(String)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#setHBaseCluster-org.apache.hadoop.hbase.HBaseCluster-">setHBaseCluster(HBaseCluster)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#setMaxRecoveryErrorCount-java.io.OutputStream-int-">setMaxRecoveryErrorCount(OutputStream, int)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Set maxRecoveryErrorCount in DFSClient.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#setReplicas-org.apache.hadoop.hbase.client.Admin-org.apache.hadoop.hbase.TableName-int-">setReplicas(Admin, TableName, int)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Set the number of Region replicas.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html#setupClusterTestDir--">setupClusterTestDir()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtility</a></dt>
<dd>
<div class="block">Creates a directory for the cluster, under the test data</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#setupDataTestDir--">setupDataTestDir()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>
<div class="block">Sets up a directory for a test to use.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#setupDataTestDir--">setupDataTestDir()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Home our data in a dir under <a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#DEFAULT_BASE_TEST_DIRECTORY"><code>HBaseCommonTestingUtility.DEFAULT_BASE_TEST_DIRECTORY</code></a>.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#setupMiniKdc-java.io.File-">setupMiniKdc(File)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Sets up <code>MiniKdc</code> for testing security.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html#setZkCluster-org.apache.hadoop.hbase.zookeeper.MiniZooKeeperCluster-">setZkCluster(MiniZooKeeperCluster)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#shutdown--">shutdown()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Shut down the mini HBase cluster</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#shutdownMiniCluster--">shutdownMiniCluster()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Stops mini hbase, zk, and hdfs clusters.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#shutdownMiniDFSCluster--">shutdownMiniDFSCluster()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Shuts down instance created by call to <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniDFSCluster-int-"><code>HBaseTestingUtility.startMiniDFSCluster(int)</code></a>
 or does nothing.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#shutdownMiniHBaseCluster--">shutdownMiniHBaseCluster()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Shutdown HBase mini cluster.Does not shutdown zk or dfs if running.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#shutdownMiniMapReduceCluster--">shutdownMiniMapReduceCluster()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Stops the previously started <code>MiniMRCluster</code>.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html#shutdownMiniZKCluster--">shutdownMiniZKCluster()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtility</a></dt>
<dd>
<div class="block">Shuts down zk cluster created by call to <a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html#startMiniZKCluster--"><code>HBaseZKTestingUtility.startMiniZKCluster()</code></a> or does nothing.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#START_KEY">START_KEY</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#START_KEY_BYTES">START_KEY_BYTES</a></span> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#startDataNode-org.apache.hadoop.hbase.ServerName-">startDataNode(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#startMaster-java.lang.String-int-">startMaster(String, int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#startMaster--">startMaster()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Starts a master thread running</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-boolean-">startMiniCluster(boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">since 2.2.0 and will be removed in 4.0.0. Use
   <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-org.apache.hadoop.hbase.StartMiniClusterOption-"><code>HBaseTestingUtility.startMiniCluster(StartMiniClusterOption)</code></a> instead.</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-int-boolean-">startMiniCluster(int, boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">since 2.2.0 and will be removed in 4.0.0. Use
   <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-org.apache.hadoop.hbase.StartMiniClusterOption-"><code>HBaseTestingUtility.startMiniCluster(StartMiniClusterOption)</code></a> instead.</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-int-boolean-boolean-">startMiniCluster(int, boolean, boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">since 2.2.0 and will be removed in 4.0.0. Use
   <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-org.apache.hadoop.hbase.StartMiniClusterOption-"><code>HBaseTestingUtility.startMiniCluster(StartMiniClusterOption)</code></a> instead.</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-int-int-boolean-">startMiniCluster(int, int, boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">since 2.2.0 and will be removed in 4.0.0. Use
  <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-org.apache.hadoop.hbase.StartMiniClusterOption-"><code>HBaseTestingUtility.startMiniCluster(StartMiniClusterOption)</code></a> instead.</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-int-int-">startMiniCluster(int, int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">since 2.2.0 and will be removed in 4.0.0. Use
   <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-org.apache.hadoop.hbase.StartMiniClusterOption-"><code>HBaseTestingUtility.startMiniCluster(StartMiniClusterOption)</code></a> instead.</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-int-int-java.lang.String:A-boolean-">startMiniCluster(int, int, String[], boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">since 2.2.0 and will be removed in 4.0.0. Use
   <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-org.apache.hadoop.hbase.StartMiniClusterOption-"><code>HBaseTestingUtility.startMiniCluster(StartMiniClusterOption)</code></a> instead.</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-int-int-java.lang.String:A-">startMiniCluster(int, int, String[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">since 2.2.0 and will be removed in 4.0.0. Use
   <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-org.apache.hadoop.hbase.StartMiniClusterOption-"><code>HBaseTestingUtility.startMiniCluster(StartMiniClusterOption)</code></a> instead.</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-int-int-int-">startMiniCluster(int, int, int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">since 2.2.0 and will be removed in 4.0.0. Use
   <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-org.apache.hadoop.hbase.StartMiniClusterOption-"><code>HBaseTestingUtility.startMiniCluster(StartMiniClusterOption)</code></a> instead.</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-int-int-java.lang.String:A-java.lang.Class-java.lang.Class-">startMiniCluster(int, int, String[], Class&lt;? extends HMaster&gt;, Class&lt;? extends MiniHBaseCluster.MiniHBaseClusterRegionServer&gt;)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">since 2.2.0 and will be removed in 4.0.0. Use
   <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-org.apache.hadoop.hbase.StartMiniClusterOption-"><code>HBaseTestingUtility.startMiniCluster(StartMiniClusterOption)</code></a> instead.</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-int-int-int-java.lang.String:A-java.lang.Class-java.lang.Class-">startMiniCluster(int, int, int, String[], Class&lt;? extends HMaster&gt;, Class&lt;? extends MiniHBaseCluster.MiniHBaseClusterRegionServer&gt;)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">since 2.2.0 and will be removed in 4.0.0. Use
   <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-org.apache.hadoop.hbase.StartMiniClusterOption-"><code>HBaseTestingUtility.startMiniCluster(StartMiniClusterOption)</code></a> instead.</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-int-int-int-java.lang.String:A-java.lang.Class-java.lang.Class-boolean-boolean-">startMiniCluster(int, int, int, String[], Class&lt;? extends HMaster&gt;, Class&lt;? extends MiniHBaseCluster.MiniHBaseClusterRegionServer&gt;, boolean, boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">since 2.2.0 and will be removed in 4.0.0. Use
   <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-org.apache.hadoop.hbase.StartMiniClusterOption-"><code>HBaseTestingUtility.startMiniCluster(StartMiniClusterOption)</code></a> instead.</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-int-">startMiniCluster(int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Start up a minicluster of hbase, dfs and zookeeper clusters with given slave node number.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster--">startMiniCluster()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Start up a minicluster of hbase, dfs and zookeeper all using default options.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniCluster-org.apache.hadoop.hbase.StartMiniClusterOption-">startMiniCluster(StartMiniClusterOption)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Start up a mini cluster of hbase, optionally dfs and zookeeper if needed.</div>
</dd>
<dt><a href="org/apache/hadoop/hbase/StartMiniClusterOption.html" title="class in org.apache.hadoop.hbase"><span class="typeNameLink">StartMiniClusterOption</span></a> - Class in <a href="org/apache/hadoop/hbase/package-summary.html">org.apache.hadoop.hbase</a></dt>
<dd>
<div class="block">Options for starting up a mini cluster (including an hbase, dfs and zookeeper clusters) in test.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniDFSCluster-int-">startMiniDFSCluster(int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Start a minidfscluster.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniDFSCluster-java.lang.String:A-">startMiniDFSCluster(String[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Start a minidfscluster.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniDFSCluster-int-java.lang.String:A-">startMiniDFSCluster(int, String[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Start a minidfscluster.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniDFSCluster-int-java.lang.String:A-java.lang.String:A-">startMiniDFSCluster(int, String[], String[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniDFSClusterForTestWAL-int-">startMiniDFSClusterForTestWAL(int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniHBaseCluster-org.apache.hadoop.hbase.StartMiniClusterOption-">startMiniHBaseCluster(StartMiniClusterOption)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Starts up mini hbase cluster.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniHBaseCluster--">startMiniHBaseCluster()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Starts up mini hbase cluster using default options.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniHBaseCluster-int-int-">startMiniHBaseCluster(int, int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">since 2.2.0 and will be removed in 4.0.0. Use
   <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniHBaseCluster-org.apache.hadoop.hbase.StartMiniClusterOption-"><code>HBaseTestingUtility.startMiniHBaseCluster(StartMiniClusterOption)</code></a> instead.</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniHBaseCluster-int-int-java.util.List-">startMiniHBaseCluster(int, int, List&lt;Integer&gt;)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">since 2.2.0 and will be removed in 4.0.0. Use
   <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniHBaseCluster-org.apache.hadoop.hbase.StartMiniClusterOption-"><code>HBaseTestingUtility.startMiniHBaseCluster(StartMiniClusterOption)</code></a> instead.</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniHBaseCluster-int-int-java.util.List-java.lang.Class-java.lang.Class-boolean-boolean-">startMiniHBaseCluster(int, int, List&lt;Integer&gt;, Class&lt;? extends HMaster&gt;, Class&lt;? extends MiniHBaseCluster.MiniHBaseClusterRegionServer&gt;, boolean, boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">since 2.2.0 and will be removed in 4.0.0. Use
   <a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniHBaseCluster-org.apache.hadoop.hbase.StartMiniClusterOption-"><code>HBaseTestingUtility.startMiniHBaseCluster(StartMiniClusterOption)</code></a> instead.</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#startMiniMapReduceCluster--">startMiniMapReduceCluster()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Starts a <code>MiniMRCluster</code> with a default number of
 <code>TaskTracker</code>'s.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html#startMiniZKCluster--">startMiniZKCluster()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtility</a></dt>
<dd>
<div class="block">Call this if you only want a zk cluster.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html#startMiniZKCluster-int-int...-">startMiniZKCluster(int, int...)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtility</a></dt>
<dd>
<div class="block">Call this if you only want a zk cluster.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#startNameNode-org.apache.hadoop.hbase.ServerName-">startNameNode(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#startRegionServer-java.lang.String-int-">startRegionServer(String, int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#startRegionServer--">startRegionServer()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Starts a region server thread running</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#startRegionServerAndWait-long-">startRegionServerAndWait(long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Starts a region server thread and waits until its processed by master.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#startZkNode-java.lang.String-int-">startZkNode(String, int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#stopDataNode-org.apache.hadoop.hbase.ServerName-">stopDataNode(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#stopMaster-org.apache.hadoop.hbase.ServerName-">stopMaster(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#stopMaster-int-">stopMaster(int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Shut down the specified master cleanly</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#stopMaster-int-boolean-">stopMaster(int, boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Shut down the specified master cleanly</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#stopNameNode-org.apache.hadoop.hbase.ServerName-">stopNameNode(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#stopRegionServer-org.apache.hadoop.hbase.ServerName-">stopRegionServer(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#stopRegionServer-int-">stopRegionServer(int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Shut down the specified region server cleanly</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#stopRegionServer-int-boolean-">stopRegionServer(int, boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Shut down the specified region server cleanly</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#stopZkNode-org.apache.hadoop.hbase.ServerName-">stopZkNode(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#suspendRegionServer-org.apache.hadoop.hbase.ServerName-">suspendRegionServer(ServerName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#suspendRegionServer-int-">suspendRegionServer(int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Suspend the specified region server</div>
</dd>
</dl>
<a name="I:T">
<!--   -->
</a>
<h2 class="title">T</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/StartMiniClusterOption.html#toString--">toString()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/StartMiniClusterOption.html" title="class in org.apache.hadoop.hbase">StartMiniClusterOption</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#truncateTable-org.apache.hadoop.hbase.TableName-boolean-">truncateTable(TableName, boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Truncate a table using the admin command.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#truncateTable-org.apache.hadoop.hbase.TableName-">truncateTable(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Truncate a table using the admin command.</div>
</dd>
</dl>
<a name="I:U">
<!--   -->
</a>
<h2 class="title">U</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#unassignRegion-java.lang.String-">unassignRegion(String)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Unassign the named region.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#unassignRegion-byte:A-">unassignRegion(byte[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Unassign the named region.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#unassignRegionByRow-java.lang.String-org.apache.hadoop.hbase.client.RegionLocator-">unassignRegionByRow(String, RegionLocator)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Closes the region containing the given row.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#unassignRegionByRow-byte:A-org.apache.hadoop.hbase.client.RegionLocator-">unassignRegionByRow(byte[], RegionLocator)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Closes the region containing the given row.</div>
</dd>
</dl>
<a name="I:V">
<!--   -->
</a>
<h2 class="title">V</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#verifyNumericRows-org.apache.hadoop.hbase.client.Table-byte:A-int-int-int-">verifyNumericRows(Table, byte[], int, int, int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#verifyNumericRows-org.apache.hadoop.hbase.regionserver.Region-byte:A-int-int-">verifyNumericRows(Region, byte[], int, int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#verifyNumericRows-org.apache.hadoop.hbase.regionserver.HRegion-byte:A-int-int-">verifyNumericRows(HRegion, byte[], int, int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#verifyNumericRows-org.apache.hadoop.hbase.regionserver.Region-byte:A-int-int-boolean-">verifyNumericRows(Region, byte[], int, int, boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#verifyNumericRows-org.apache.hadoop.hbase.regionserver.HRegion-byte:A-int-int-boolean-">verifyNumericRows(HRegion, byte[], int, int, boolean)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#verifyTableDescriptorIgnoreTableName-org.apache.hadoop.hbase.client.TableDescriptor-org.apache.hadoop.hbase.client.TableDescriptor-">verifyTableDescriptorIgnoreTableName(TableDescriptor, TableDescriptor)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:W">
<!--   -->
</a>
<h2 class="title">W</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#waitFor-long-org.apache.hadoop.hbase.Waiter.Predicate-">waitFor(long, Waiter.Predicate&lt;E&gt;)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>
<div class="block">Wrapper method for <a href="../apidocs/org/apache/hadoop/hbase/Waiter.html?is-external=true#waitFor-org.apache.hadoop.conf.Configuration-long-org.apache.hadoop.hbase.Waiter.Predicate-" title="class or interface in org.apache.hadoop.hbase"><code>Waiter.waitFor(Configuration, long, Predicate)</code></a>.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#waitFor-long-long-org.apache.hadoop.hbase.Waiter.Predicate-">waitFor(long, long, Waiter.Predicate&lt;E&gt;)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>
<div class="block">Wrapper method for <a href="../apidocs/org/apache/hadoop/hbase/Waiter.html?is-external=true#waitFor-org.apache.hadoop.conf.Configuration-long-long-org.apache.hadoop.hbase.Waiter.Predicate-" title="class or interface in org.apache.hadoop.hbase"><code>Waiter.waitFor(Configuration, long, long, Predicate)</code></a>.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html#waitFor-long-long-boolean-org.apache.hadoop.hbase.Waiter.Predicate-">waitFor(long, long, boolean, Waiter.Predicate&lt;E&gt;)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseCommonTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtility</a></dt>
<dd>
<div class="block">Wrapper method for <a href="../apidocs/org/apache/hadoop/hbase/Waiter.html?is-external=true#waitFor-org.apache.hadoop.conf.Configuration-long-long-boolean-org.apache.hadoop.hbase.Waiter.Predicate-" title="class or interface in org.apache.hadoop.hbase"><code>Waiter.waitFor(Configuration, long, long, boolean, Predicate)</code></a>.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForActiveAndReadyMaster-long-">waitForActiveAndReadyMaster(long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Blocks until there is an active master and that master has completed
 initialization.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForDataNodeToStart-org.apache.hadoop.hbase.ServerName-long-">waitForDataNodeToStart(ServerName, long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForDataNodeToStop-org.apache.hadoop.hbase.ServerName-long-">waitForDataNodeToStop(ServerName, long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#waitForHostPort-java.lang.String-int-">waitForHostPort(String, int)</a></span> - Static method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForMasterToStop-org.apache.hadoop.hbase.ServerName-long-">waitForMasterToStop(ServerName, long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForNameNodeToStart-org.apache.hadoop.hbase.ServerName-long-">waitForNameNodeToStart(ServerName, long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForNameNodeToStop-org.apache.hadoop.hbase.ServerName-long-">waitForNameNodeToStop(ServerName, long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForRegionServerToStop-org.apache.hadoop.hbase.ServerName-long-">waitForRegionServerToStop(ServerName, long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForZkNodeToStart-org.apache.hadoop.hbase.ServerName-long-">waitForZkNodeToStart(ServerName, long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForZkNodeToStop-org.apache.hadoop.hbase.ServerName-long-">waitForZkNodeToStop(ServerName, long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#waitLabelAvailable-long-java.lang.String...-">waitLabelAvailable(long, String...)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Wait until labels is ready in VisibilityLabelsCache.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#waitOnMaster-int-">waitOnMaster(int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Wait for the specified master to stop.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#waitOnRegionServer-int-">waitOnRegionServer(int)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>
<div class="block">Wait for the specified region server to stop.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#waitTableAvailable-org.apache.hadoop.hbase.TableName-">waitTableAvailable(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Wait until all regions in a table have been assigned.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#waitTableAvailable-org.apache.hadoop.hbase.TableName-long-">waitTableAvailable(TableName, long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#waitTableAvailable-byte:A-long-">waitTableAvailable(byte[], long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Wait until all regions in a table have been assigned</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#waitTableDisabled-byte:A-">waitTableDisabled(byte[])</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Waits for a table to be 'disabled'.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#waitTableDisabled-org.apache.hadoop.hbase.TableName-long-">waitTableDisabled(TableName, long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#waitTableDisabled-byte:A-long-">waitTableDisabled(byte[], long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Waits for a table to be 'disabled'.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#waitTableEnabled-org.apache.hadoop.hbase.TableName-">waitTableEnabled(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Waits for a table to be 'enabled'.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#waitTableEnabled-byte:A-long-">waitTableEnabled(byte[], long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Waits for a table to be 'enabled'.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#waitTableEnabled-org.apache.hadoop.hbase.TableName-long-">waitTableEnabled(TableName, long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#waitUntilAllRegionsAssigned-org.apache.hadoop.hbase.TableName-">waitUntilAllRegionsAssigned(TableName)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Wait until all regions for a table in hbase:meta have a non-empty
 info:server, up to a configuable timeout value (default is 60 seconds)
 This means all regions have been deployed,
 master has been informed and updated hbase:meta with the regions deployed
 server.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#waitUntilAllRegionsAssigned-org.apache.hadoop.hbase.TableName-long-">waitUntilAllRegionsAssigned(TableName, long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Wait until all regions for a table in hbase:meta have a non-empty
 info:server, or until timeout.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#waitUntilAllSystemRegionsAssigned--">waitUntilAllSystemRegionsAssigned()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Waith until all system table's regions get assigned</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#waitUntilNoRegionsInTransition-long-">waitUntilNoRegionsInTransition(long)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Wait until no regions in transition.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#waitUntilNoRegionsInTransition--">waitUntilNoRegionsInTransition()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
<dd>
<div class="block">Wait until no regions in transition.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/MiniHBaseCluster.html#waitUntilShutDown--">waitUntilShutDown()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MiniHBaseCluster.html" title="class in org.apache.hadoop.hbase">MiniHBaseCluster</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:Z">
<!--   -->
</a>
<h2 class="title">Z</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html#zooKeeperWatcher">zooKeeperWatcher</a></span> - Variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseZKTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtility</a></dt>
<dd>&nbsp;</dd>
</dl>
<a href="#I:A">A</a>&nbsp;<a href="#I:B">B</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:D">D</a>&nbsp;<a href="#I:E">E</a>&nbsp;<a href="#I:F">F</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:H">H</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:J">J</a>&nbsp;<a href="#I:K">K</a>&nbsp;<a href="#I:L">L</a>&nbsp;<a href="#I:M">M</a>&nbsp;<a href="#I:O">O</a>&nbsp;<a href="#I:P">P</a>&nbsp;<a href="#I:R">R</a>&nbsp;<a href="#I:S">S</a>&nbsp;<a href="#I:T">T</a>&nbsp;<a href="#I:U">U</a>&nbsp;<a href="#I:V">V</a>&nbsp;<a href="#I:W">W</a>&nbsp;<a href="#I:Z">Z</a>&nbsp;</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="overview-summary.html">Overview</a></li>
<li>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-tree.html">Tree</a></li>
<li><a href="deprecated-list.html">Deprecated</a></li>
<li class="navBarCell1Rev">Index</li>
<li><a href="help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?index-all.html" target="_top">Frames</a></li>
<li><a href="index-all.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>
