Published site at 82d554e3783372cc6b05489452c815b57c06f6cd.
Project: http://git-wip-us.apache.org/repos/asf/hbase-site/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase-site/commit/9eba7fcf Tree: http://git-wip-us.apache.org/repos/asf/hbase-site/tree/9eba7fcf Diff: http://git-wip-us.apache.org/repos/asf/hbase-site/diff/9eba7fcf Branch: refs/heads/asf-site Commit: 9eba7fcf3647e828df2d8bd082122b52ee25981f Parents: 419fe07 Author: jenkins <[email protected]> Authored: Wed Jul 19 22:07:02 2017 +0000 Committer: jenkins <[email protected]> Committed: Wed Jul 19 22:07:02 2017 +0000 ---------------------------------------------------------------------- acid-semantics.html | 4 +- apache_hbase_reference_guide.pdf | 6 +- .../apache/hadoop/hbase/LocalHBaseCluster.html | 18 +- .../hbase/mapreduce/LoadIncrementalHFiles.html | 10 +- .../apache/hadoop/hbase/LocalHBaseCluster.html | 266 +- .../hbase/mapreduce/LoadIncrementalHFiles.html | 546 +- bulk-loads.html | 4 +- checkstyle-aggregate.html | 3434 +++--- checkstyle.rss | 4 +- coc.html | 4 +- cygwin.html | 4 +- dependencies.html | 4 +- dependency-convergence.html | 4 +- dependency-info.html | 4 +- dependency-management.html | 4 +- devapidocs/allclasses-frame.html | 1 + devapidocs/allclasses-noframe.html | 1 + devapidocs/constant-values.html | 44 +- devapidocs/index-all.html | 27 +- .../apache/hadoop/hbase/LocalHBaseCluster.html | 18 +- .../hadoop/hbase/backup/package-tree.html | 2 +- .../hbase/classification/package-tree.html | 6 +- .../client/CancellableRegionServerCallable.html | 2 +- .../hbase/client/ClientServiceCallable.html | 2 +- .../ConnectionUtils.MasterlessConnection.html | 6 +- .../hadoop/hbase/client/ConnectionUtils.html | 149 +- .../hbase/client/FlushRegionCallable.html | 2 +- .../hbase/client/MultiServerCallable.html | 2 +- .../client/NoncedRegionServerCallable.html | 2 +- .../client/RegionAdminServiceCallable.html | 57 +- .../hbase/client/RegionServerCallable.html | 65 +- .../hbase/client/ReversedScannerCallable.html | 2 +- ...eadReplicas.ReplicaRegionServerCallable.html | 2 +- .../hadoop/hbase/client/ScannerCallable.html | 2 +- .../hadoop/hbase/client/package-tree.html | 26 +- ...WorkerCoordination.GetDataAsyncCallback.html | 8 +- ...ogWorkerCoordination.ZkSplitTaskDetails.html | 20 +- .../ZkSplitLogWorkerCoordination.html | 80 +- .../hadoop/hbase/filter/package-tree.html | 8 +- .../hadoop/hbase/io/hfile/package-tree.html | 4 +- .../apache/hadoop/hbase/ipc/package-tree.html | 2 +- .../hadoop/hbase/mapreduce/JarFinder.html | 4 +- .../hbase/mapreduce/LoadIncrementalHFiles.html | 22 +- .../hadoop/hbase/mapreduce/package-tree.html | 2 +- .../apache/hadoop/hbase/master/DeadServer.html | 14 +- .../hadoop/hbase/master/package-tree.html | 4 +- .../org/apache/hadoop/hbase/package-tree.html | 12 +- .../hadoop/hbase/procedure2/package-tree.html | 6 +- .../hadoop/hbase/quotas/package-tree.html | 4 +- .../regionserver/HRegion.BatchOperation.html | 26 +- .../regionserver/HRegion.MutationBatch.html | 20 +- .../regionserver/HRegion.RegionScannerImpl.html | 92 +- .../hbase/regionserver/HRegion.ReplayBatch.html | 18 +- .../regionserver/HRegion.RowLockContext.html | 28 +- .../hbase/regionserver/HRegion.RowLockImpl.html | 16 +- .../hadoop/hbase/regionserver/HRegion.html | 352 +- .../hadoop/hbase/regionserver/package-tree.html | 16 +- .../regionserver/querymatcher/package-tree.html | 4 +- ...WALEditsReplaySink.ReplayServerCallable.html | 2 +- .../hbase/regionserver/wal/package-tree.html | 2 +- ...ionEndpoint.RegionReplicaReplayCallable.html | 2 +- .../replication/regionserver/package-tree.html | 2 +- .../hadoop/hbase/rest/model/package-tree.html | 2 +- .../hbase/security/access/package-tree.html | 4 +- .../hadoop/hbase/security/package-tree.html | 2 +- .../hadoop/hbase/thrift/package-tree.html | 2 +- .../hadoop/hbase/tool/Canary.RegionMonitor.html | 8 +- .../hbase/tool/Canary.RegionServerMonitor.html | 20 +- .../hbase/tool/Canary.ZookeeperMonitor.html | 14 +- .../org/apache/hadoop/hbase/tool/Canary.html | 6 +- .../ByteBufferArray.BufferCreatorCallable.html | 371 + .../hbase/util/ByteBufferArray.Visitor.html | 8 +- .../hadoop/hbase/util/ByteBufferArray.html | 77 +- .../util/class-use/ByteBufferAllocator.html | 33 + .../ByteBufferArray.BufferCreatorCallable.html | 125 + .../apache/hadoop/hbase/util/package-frame.html | 1 + .../hadoop/hbase/util/package-summary.html | 305 +- .../apache/hadoop/hbase/util/package-tree.html | 9 +- .../apache/hadoop/hbase/wal/package-tree.html | 2 +- devapidocs/overview-tree.html | 1 + .../apache/hadoop/hbase/LocalHBaseCluster.html | 266 +- .../org/apache/hadoop/hbase/Version.html | 6 +- .../ConnectionUtils.MasterlessConnection.html | 724 +- .../hadoop/hbase/client/ConnectionUtils.html | 724 +- .../client/RegionAdminServiceCallable.html | 290 +- .../hbase/client/RegionServerCallable.html | 330 +- .../hadoop/hbase/constraint/Constraints.html | 4 +- ...WorkerCoordination.GetDataAsyncCallback.html | 1199 +- ...ogWorkerCoordination.ZkSplitTaskDetails.html | 1199 +- .../ZkSplitLogWorkerCoordination.html | 1199 +- .../hadoop/hbase/mapreduce/JarFinder.html | 183 +- .../LoadIncrementalHFiles.BulkHFileVisitor.html | 546 +- .../LoadIncrementalHFiles.LoadQueueItem.html | 546 +- .../hbase/mapreduce/LoadIncrementalHFiles.html | 546 +- .../apache/hadoop/hbase/master/DeadServer.html | 143 +- .../regionserver/HRegion.BatchOperation.html | 10568 ++++++++--------- .../regionserver/HRegion.FlushResultImpl.html | 10568 ++++++++--------- .../regionserver/HRegion.MutationBatch.html | 10568 ++++++++--------- .../HRegion.ObservedExceptionsInBatch.html | 10568 ++++++++--------- .../HRegion.PrepareFlushResult.html | 10568 ++++++++--------- .../regionserver/HRegion.RegionScannerImpl.html | 10568 ++++++++--------- .../hbase/regionserver/HRegion.ReplayBatch.html | 10568 ++++++++--------- .../regionserver/HRegion.RowLockContext.html | 10568 ++++++++--------- .../hbase/regionserver/HRegion.RowLockImpl.html | 10568 ++++++++--------- .../hbase/regionserver/HRegion.WriteState.html | 10568 ++++++++--------- .../hadoop/hbase/regionserver/HRegion.html | 10568 ++++++++--------- .../ReplicationSource.LogsComparator.html | 2 +- .../regionserver/ReplicationSource.html | 2 +- .../hbase/tmpl/master/MasterStatusTmplImpl.html | 448 +- .../tmpl/regionserver/RSStatusTmplImpl.html | 118 +- .../hadoop/hbase/tool/Canary.ExtendedSink.html | 979 +- .../hadoop/hbase/tool/Canary.Monitor.html | 979 +- .../hadoop/hbase/tool/Canary.RegionMonitor.html | 979 +- .../hbase/tool/Canary.RegionServerMonitor.html | 979 +- .../tool/Canary.RegionServerStdOutSink.html | 979 +- .../hbase/tool/Canary.RegionServerTask.html | 979 +- .../hbase/tool/Canary.RegionStdOutSink.html | 979 +- .../hbase/tool/Canary.RegionTask.TaskType.html | 979 +- .../hadoop/hbase/tool/Canary.RegionTask.html | 979 +- .../apache/hadoop/hbase/tool/Canary.Sink.html | 979 +- .../hadoop/hbase/tool/Canary.StdOutSink.html | 979 +- .../hbase/tool/Canary.ZookeeperMonitor.html | 979 +- .../hbase/tool/Canary.ZookeeperStdOutSink.html | 979 +- .../hadoop/hbase/tool/Canary.ZookeeperTask.html | 979 +- .../org/apache/hadoop/hbase/tool/Canary.html | 979 +- .../ByteBufferArray.BufferCreatorCallable.html | 390 + .../hbase/util/ByteBufferArray.Visitor.html | 521 +- .../hadoop/hbase/util/ByteBufferArray.html | 521 +- export_control.html | 4 +- hbase-annotations/checkstyle.html | 6 +- hbase-annotations/dependencies.html | 6 +- hbase-annotations/dependency-convergence.html | 6 +- hbase-annotations/dependency-info.html | 6 +- hbase-annotations/dependency-management.html | 6 +- hbase-annotations/index.html | 6 +- hbase-annotations/integration.html | 6 +- hbase-annotations/issue-tracking.html | 6 +- hbase-annotations/license.html | 6 +- hbase-annotations/mail-lists.html | 6 +- hbase-annotations/plugin-management.html | 6 +- hbase-annotations/plugins.html | 6 +- hbase-annotations/project-info.html | 6 +- hbase-annotations/project-reports.html | 6 +- hbase-annotations/project-summary.html | 6 +- hbase-annotations/source-repository.html | 6 +- hbase-annotations/team-list.html | 6 +- hbase-archetypes/dependencies.html | 6 +- hbase-archetypes/dependency-convergence.html | 6 +- hbase-archetypes/dependency-info.html | 6 +- hbase-archetypes/dependency-management.html | 6 +- .../hbase-archetype-builder/dependencies.html | 6 +- .../dependency-convergence.html | 6 +- .../dependency-info.html | 6 +- .../dependency-management.html | 6 +- .../hbase-archetype-builder/index.html | 6 +- .../hbase-archetype-builder/integration.html | 6 +- .../hbase-archetype-builder/issue-tracking.html | 6 +- .../hbase-archetype-builder/license.html | 6 +- .../hbase-archetype-builder/mail-lists.html | 6 +- .../plugin-management.html | 6 +- .../hbase-archetype-builder/plugins.html | 6 +- .../hbase-archetype-builder/project-info.html | 6 +- .../project-summary.html | 6 +- .../source-repository.html | 6 +- .../hbase-archetype-builder/team-list.html | 6 +- .../hbase-client-project/checkstyle.html | 6 +- .../hbase-client-project/dependencies.html | 8 +- .../dependency-convergence.html | 6 +- .../hbase-client-project/dependency-info.html | 6 +- .../dependency-management.html | 6 +- .../hbase-client-project/index.html | 6 +- .../hbase-client-project/integration.html | 6 +- .../hbase-client-project/issue-tracking.html | 6 +- .../hbase-client-project/license.html | 6 +- .../hbase-client-project/mail-lists.html | 6 +- .../hbase-client-project/plugin-management.html | 6 +- .../hbase-client-project/plugins.html | 6 +- .../hbase-client-project/project-info.html | 6 +- .../hbase-client-project/project-reports.html | 6 +- .../hbase-client-project/project-summary.html | 6 +- .../hbase-client-project/source-repository.html | 6 +- .../hbase-client-project/team-list.html | 6 +- .../hbase-shaded-client-project/checkstyle.html | 6 +- .../dependencies.html | 8 +- .../dependency-convergence.html | 6 +- .../dependency-info.html | 6 +- .../dependency-management.html | 6 +- .../hbase-shaded-client-project/index.html | 6 +- .../integration.html | 6 +- .../issue-tracking.html | 6 +- .../hbase-shaded-client-project/license.html | 211 +- .../hbase-shaded-client-project/mail-lists.html | 6 +- .../plugin-management.html | 6 +- .../hbase-shaded-client-project/plugins.html | 6 +- .../project-info.html | 6 +- .../project-reports.html | 6 +- .../project-summary.html | 6 +- .../source-repository.html | 6 +- .../hbase-shaded-client-project/team-list.html | 6 +- hbase-archetypes/index.html | 6 +- hbase-archetypes/integration.html | 6 +- hbase-archetypes/issue-tracking.html | 6 +- hbase-archetypes/license.html | 6 +- hbase-archetypes/mail-lists.html | 6 +- hbase-archetypes/plugin-management.html | 6 +- hbase-archetypes/plugins.html | 6 +- hbase-archetypes/project-info.html | 6 +- hbase-archetypes/project-summary.html | 6 +- hbase-archetypes/source-repository.html | 6 +- hbase-archetypes/team-list.html | 6 +- hbase-spark/checkstyle.html | 6 +- hbase-spark/dependencies.html | 20 +- hbase-spark/dependency-convergence.html | 6 +- hbase-spark/dependency-info.html | 6 +- hbase-spark/dependency-management.html | 6 +- hbase-spark/index.html | 6 +- hbase-spark/integration.html | 6 +- hbase-spark/issue-tracking.html | 6 +- hbase-spark/license.html | 6 +- hbase-spark/mail-lists.html | 6 +- hbase-spark/plugin-management.html | 6 +- hbase-spark/plugins.html | 6 +- hbase-spark/project-info.html | 6 +- hbase-spark/project-reports.html | 6 +- hbase-spark/project-summary.html | 6 +- hbase-spark/source-repository.html | 6 +- hbase-spark/team-list.html | 6 +- index.html | 4 +- integration.html | 4 +- issue-tracking.html | 4 +- license.html | 4 +- mail-lists.html | 4 +- metrics.html | 4 +- old_news.html | 4 +- plugin-management.html | 4 +- plugins.html | 4 +- poweredbyhbase.html | 4 +- project-info.html | 4 +- project-reports.html | 4 +- project-summary.html | 4 +- pseudo-distributed.html | 4 +- replication.html | 4 +- resources.html | 4 +- source-repository.html | 4 +- sponsors.html | 4 +- supportingprojects.html | 4 +- team-list.html | 4 +- testdevapidocs/index-all.html | 4 +- .../hbase/client/TestConnectionUtils.html | 19 +- .../hadoop/hbase/util/TestByteBufferArray.html | 28 +- .../hbase/client/TestConnectionUtils.html | 56 +- .../hadoop/hbase/util/TestByteBufferArray.html | 101 +- 252 files changed, 74782 insertions(+), 73655 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase-site/blob/9eba7fcf/acid-semantics.html ---------------------------------------------------------------------- diff --git a/acid-semantics.html b/acid-semantics.html index 73ccc28..eca5ec9 100644 --- a/acid-semantics.html +++ b/acid-semantics.html @@ -7,7 +7,7 @@ <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> - <meta name="Date-Revision-yyyymmdd" content="20170718" /> + <meta name="Date-Revision-yyyymmdd" content="20170719" /> <meta http-equiv="Content-Language" content="en" /> <title>Apache HBase – Apache HBase (TM) ACID Properties @@ -606,7 +606,7 @@ under the License. --> <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved. - <li id="publishDate" class="pull-right">Last Published: 2017-07-18</li> + <li id="publishDate" class="pull-right">Last Published: 2017-07-19</li> </p> </div> http://git-wip-us.apache.org/repos/asf/hbase-site/blob/9eba7fcf/apache_hbase_reference_guide.pdf ---------------------------------------------------------------------- diff --git a/apache_hbase_reference_guide.pdf b/apache_hbase_reference_guide.pdf index 65618d5..381fc68 100644 --- a/apache_hbase_reference_guide.pdf +++ b/apache_hbase_reference_guide.pdf @@ -5,8 +5,8 @@ /Author (Apache HBase Team) /Creator (Asciidoctor PDF 1.5.0.alpha.15, based on Prawn 2.2.2) /Producer (Apache HBase Team) -/ModDate (D:20170718214848+00'00') -/CreationDate (D:20170718214848+00'00') +/ModDate (D:20170719214846+00'00') +/CreationDate (D:20170719214846+00'00') >> endobj 2 0 obj @@ -27334,7 +27334,7 @@ endobj endobj 136 0 obj << /Limits [(__anchor-top) (adding.new.node)] -/Names [(__anchor-top) 25 0 R (__indexterm-6954598) 3262 0 R (__indexterm-6956848) 3264 0 R (__indexterm-6958910) 3265 0 R (__indexterm-6960784) 3266 0 R (acid) 891 0 R (add-metric-name-and-function-to-hadoop-compat-interface) 3361 0 R (add-the-implementation-to-both-hadoop-1-and-hadoop-2-compat-modules) 3362 0 R (add.metrics) 3359 0 R (adding-a-new-chapter-to-the-hbase-reference-guide) 3596 0 R (adding.new.node) 2859 0 R] +/Names [(__anchor-top) 25 0 R (__indexterm-6954596) 3262 0 R (__indexterm-6956846) 3264 0 R (__indexterm-6958908) 3265 0 R (__indexterm-6960782) 3266 0 R (acid) 891 0 R (add-metric-name-and-function-to-hadoop-compat-interface) 3361 0 R (add-the-implementation-to-both-hadoop-1-and-hadoop-2-compat-modules) 3362 0 R (add.metrics) 3359 0 R (adding-a-new-chapter-to-the-hbase-reference-guide) 3596 0 R (adding.new.node) 2859 0 R] >> endobj 137 0 obj http://git-wip-us.apache.org/repos/asf/hbase-site/blob/9eba7fcf/apidocs/org/apache/hadoop/hbase/LocalHBaseCluster.html ---------------------------------------------------------------------- diff --git a/apidocs/org/apache/hadoop/hbase/LocalHBaseCluster.html b/apidocs/org/apache/hadoop/hbase/LocalHBaseCluster.html index e8997e6..766b46c 100644 --- a/apidocs/org/apache/hadoop/hbase/LocalHBaseCluster.html +++ b/apidocs/org/apache/hadoop/hbase/LocalHBaseCluster.html @@ -690,7 +690,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html? <ul class="blockList"> <li class="blockList"> <h4>getMasters</h4> -<pre>public <a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><org.apache.hadoop.hbase.util.JVMClusterUtil.MasterThread> <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.326">getMasters</a>()</pre> +<pre>public <a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><org.apache.hadoop.hbase.util.JVMClusterUtil.MasterThread> <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.324">getMasters</a>()</pre> <dl> <dt><span class="returnLabel">Returns:</span></dt> <dd>Read-only list of master threads.</dd> @@ -703,7 +703,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html? <ul class="blockList"> <li class="blockList"> <h4>getLiveMasters</h4> -<pre>public <a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><org.apache.hadoop.hbase.util.JVMClusterUtil.MasterThread> <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.335">getLiveMasters</a>()</pre> +<pre>public <a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><org.apache.hadoop.hbase.util.JVMClusterUtil.MasterThread> <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.333">getLiveMasters</a>()</pre> <dl> <dt><span class="returnLabel">Returns:</span></dt> <dd>List of running master servers (Some servers may have been killed @@ -718,7 +718,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html? <ul class="blockList"> <li class="blockList"> <h4>waitOnMaster</h4> -<pre>public <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.350">waitOnMaster</a>(int serverNumber)</pre> +<pre>public <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.348">waitOnMaster</a>(int serverNumber)</pre> <div class="block">Wait for the specified master to stop. Removes this thread from list of running threads.</div> <dl> <dt><span class="returnLabel">Returns:</span></dt> @@ -732,7 +732,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html? <ul class="blockList"> <li class="blockList"> <h4>waitOnMaster</h4> -<pre>public <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.359">waitOnMaster</a>(org.apache.hadoop.hbase.util.JVMClusterUtil.MasterThread masterThread)</pre> +<pre>public <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.357">waitOnMaster</a>(org.apache.hadoop.hbase.util.JVMClusterUtil.MasterThread masterThread)</pre> <div class="block">Wait for the specified master to stop. Removes this thread from list of running threads.</div> <dl> <dt><span class="returnLabel">Returns:</span></dt> @@ -746,7 +746,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html? <ul class="blockList"> <li class="blockList"> <h4>join</h4> -<pre>public void <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.376">join</a>()</pre> +<pre>public void <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.374">join</a>()</pre> <div class="block">Wait for Mini HBase Cluster to shut down. Presumes you've already called <a href="../../../../org/apache/hadoop/hbase/LocalHBaseCluster.html#shutdown--"><code>shutdown()</code></a>.</div> </li> @@ -757,7 +757,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html? <ul class="blockList"> <li class="blockList"> <h4>startup</h4> -<pre>public void <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.404">startup</a>() +<pre>public void <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.402">startup</a>() throws <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> <div class="block">Start the cluster.</div> <dl> @@ -772,7 +772,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html? <ul class="blockList"> <li class="blockList"> <h4>shutdown</h4> -<pre>public void <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.411">shutdown</a>()</pre> +<pre>public void <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.409">shutdown</a>()</pre> <div class="block">Shut down the mini HBase cluster</div> </li> </ul> @@ -782,7 +782,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html? <ul class="blockList"> <li class="blockList"> <h4>isLocal</h4> -<pre>public static boolean <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.419">isLocal</a>(org.apache.hadoop.conf.Configuration c)</pre> +<pre>public static boolean <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.417">isLocal</a>(org.apache.hadoop.conf.Configuration c)</pre> <dl> <dt><span class="paramLabel">Parameters:</span></dt> <dd><code>c</code> - Configuration to check.</dd> @@ -797,7 +797,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html? <ul class="blockListLast"> <li class="blockList"> <h4>main</h4> -<pre>public static void <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.429">main</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[] args) +<pre>public static void <a href="../../../../src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html#line.427">main</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[] args) throws <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> <div class="block">Test things basically work.</div> <dl> http://git-wip-us.apache.org/repos/asf/hbase-site/blob/9eba7fcf/apidocs/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.html ---------------------------------------------------------------------- diff --git a/apidocs/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.html b/apidocs/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.html index 0722257..be3e524 100644 --- a/apidocs/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.html +++ b/apidocs/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.html @@ -813,7 +813,7 @@ implements org.apache.hadoop.util.Tool</pre> <ul class="blockList"> <li class="blockList"> <h4>inferBoundaries</h4> -<pre>public static byte[][] <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.html#line.1169">inferBoundaries</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/TreeMap.html?is-external=true" title="class or interface in java.util">TreeMap</a><byte[],<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>> bdryMap)</pre> +<pre>public static byte[][] <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.html#line.1163">inferBoundaries</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/TreeMap.html?is-external=true" title="class or interface in java.util">TreeMap</a><byte[],<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>> bdryMap)</pre> </li> </ul> <a name="run-java.lang.String-java.util.Map-org.apache.hadoop.hbase.TableName-"> @@ -822,7 +822,7 @@ implements org.apache.hadoop.util.Tool</pre> <ul class="blockList"> <li class="blockList"> <h4>run</h4> -<pre>public <a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles.LoadQueueItem,<a href="http://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>> <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.html#line.1244">run</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> dirPath, +<pre>public <a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles.LoadQueueItem,<a href="http://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>> <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.html#line.1238">run</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> dirPath, <a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><byte[],<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><org.apache.hadoop.fs.Path>> map, <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> tableName) throws <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> @@ -838,7 +838,7 @@ implements org.apache.hadoop.util.Tool</pre> <ul class="blockList"> <li class="blockList"> <h4>run</h4> -<pre>public int <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.html#line.1280">run</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[] args) +<pre>public int <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.html#line.1274">run</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[] args) throws <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre> <dl> <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> @@ -854,7 +854,7 @@ implements org.apache.hadoop.util.Tool</pre> <ul class="blockList"> <li class="blockList"> <h4>main</h4> -<pre>public static void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.html#line.1293">main</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[] args) +<pre>public static void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.html#line.1287">main</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[] args) throws <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre> <dl> <dt><span class="throwsLabel">Throws:</span></dt> @@ -868,7 +868,7 @@ implements org.apache.hadoop.util.Tool</pre> <ul class="blockListLast"> <li class="blockList"> <h4>setBulkToken</h4> -<pre>public void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.html#line.1308">setBulkToken</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> stagingDir)</pre> +<pre>public void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.html#line.1302">setBulkToken</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> stagingDir)</pre> <div class="block">Called from replication sink, where it manages bulkToken(staging directory) by itself. This is used only when SecureBulkLoadEndpoint is configured in hbase.coprocessor.region.classes property. This directory is used as a temporary directory where all files are initially http://git-wip-us.apache.org/repos/asf/hbase-site/blob/9eba7fcf/apidocs/src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html ---------------------------------------------------------------------- diff --git a/apidocs/src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html b/apidocs/src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html index 8a1a149..33b52e9 100644 --- a/apidocs/src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html +++ b/apidocs/src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html @@ -317,140 +317,138 @@ <span class="sourceLineNo">309</span> */<a name="line.309"></a> <span class="sourceLineNo">310</span> public HMaster getActiveMaster() {<a name="line.310"></a> <span class="sourceLineNo">311</span> for (JVMClusterUtil.MasterThread mt : masterThreads) {<a name="line.311"></a> -<span class="sourceLineNo">312</span> if (mt.getMaster().isActiveMaster()) {<a name="line.312"></a> -<span class="sourceLineNo">313</span> // Ensure that the current active master is not stopped.<a name="line.313"></a> -<span class="sourceLineNo">314</span> // We don't want to return a stopping master as an active master.<a name="line.314"></a> -<span class="sourceLineNo">315</span> if (mt.getMaster().isActiveMaster() && !mt.getMaster().isStopped()) {<a name="line.315"></a> -<span class="sourceLineNo">316</span> return mt.getMaster();<a name="line.316"></a> -<span class="sourceLineNo">317</span> }<a name="line.317"></a> -<span class="sourceLineNo">318</span> }<a name="line.318"></a> -<span class="sourceLineNo">319</span> }<a name="line.319"></a> -<span class="sourceLineNo">320</span> return null;<a name="line.320"></a> -<span class="sourceLineNo">321</span> }<a name="line.321"></a> -<span class="sourceLineNo">322</span><a name="line.322"></a> -<span class="sourceLineNo">323</span> /**<a name="line.323"></a> -<span class="sourceLineNo">324</span> * @return Read-only list of master threads.<a name="line.324"></a> -<span class="sourceLineNo">325</span> */<a name="line.325"></a> -<span class="sourceLineNo">326</span> public List<JVMClusterUtil.MasterThread> getMasters() {<a name="line.326"></a> -<span class="sourceLineNo">327</span> return Collections.unmodifiableList(this.masterThreads);<a name="line.327"></a> -<span class="sourceLineNo">328</span> }<a name="line.328"></a> -<span class="sourceLineNo">329</span><a name="line.329"></a> -<span class="sourceLineNo">330</span> /**<a name="line.330"></a> -<span class="sourceLineNo">331</span> * @return List of running master servers (Some servers may have been killed<a name="line.331"></a> -<span class="sourceLineNo">332</span> * or aborted during lifetime of cluster; these servers are not included in<a name="line.332"></a> -<span class="sourceLineNo">333</span> * this list).<a name="line.333"></a> -<span class="sourceLineNo">334</span> */<a name="line.334"></a> -<span class="sourceLineNo">335</span> public List<JVMClusterUtil.MasterThread> getLiveMasters() {<a name="line.335"></a> -<span class="sourceLineNo">336</span> List<JVMClusterUtil.MasterThread> liveServers = new ArrayList<>();<a name="line.336"></a> -<span class="sourceLineNo">337</span> List<JVMClusterUtil.MasterThread> list = getMasters();<a name="line.337"></a> -<span class="sourceLineNo">338</span> for (JVMClusterUtil.MasterThread mt: list) {<a name="line.338"></a> -<span class="sourceLineNo">339</span> if (mt.isAlive()) {<a name="line.339"></a> -<span class="sourceLineNo">340</span> liveServers.add(mt);<a name="line.340"></a> -<span class="sourceLineNo">341</span> }<a name="line.341"></a> -<span class="sourceLineNo">342</span> }<a name="line.342"></a> -<span class="sourceLineNo">343</span> return liveServers;<a name="line.343"></a> -<span class="sourceLineNo">344</span> }<a name="line.344"></a> -<span class="sourceLineNo">345</span><a name="line.345"></a> -<span class="sourceLineNo">346</span> /**<a name="line.346"></a> -<span class="sourceLineNo">347</span> * Wait for the specified master to stop. Removes this thread from list of running threads.<a name="line.347"></a> -<span class="sourceLineNo">348</span> * @return Name of master that just went down.<a name="line.348"></a> -<span class="sourceLineNo">349</span> */<a name="line.349"></a> -<span class="sourceLineNo">350</span> public String waitOnMaster(int serverNumber) {<a name="line.350"></a> -<span class="sourceLineNo">351</span> JVMClusterUtil.MasterThread masterThread = this.masterThreads.get(serverNumber);<a name="line.351"></a> -<span class="sourceLineNo">352</span> return waitOnMaster(masterThread);<a name="line.352"></a> -<span class="sourceLineNo">353</span> }<a name="line.353"></a> -<span class="sourceLineNo">354</span><a name="line.354"></a> -<span class="sourceLineNo">355</span> /**<a name="line.355"></a> -<span class="sourceLineNo">356</span> * Wait for the specified master to stop. Removes this thread from list of running threads.<a name="line.356"></a> -<span class="sourceLineNo">357</span> * @return Name of master that just went down.<a name="line.357"></a> -<span class="sourceLineNo">358</span> */<a name="line.358"></a> -<span class="sourceLineNo">359</span> public String waitOnMaster(JVMClusterUtil.MasterThread masterThread) {<a name="line.359"></a> -<span class="sourceLineNo">360</span> while (masterThread.isAlive()) {<a name="line.360"></a> -<span class="sourceLineNo">361</span> try {<a name="line.361"></a> -<span class="sourceLineNo">362</span> LOG.info("Waiting on " + masterThread.getMaster().getServerName().toString());<a name="line.362"></a> -<span class="sourceLineNo">363</span> masterThread.join();<a name="line.363"></a> -<span class="sourceLineNo">364</span> } catch (InterruptedException e) {<a name="line.364"></a> -<span class="sourceLineNo">365</span> e.printStackTrace();<a name="line.365"></a> -<span class="sourceLineNo">366</span> }<a name="line.366"></a> -<span class="sourceLineNo">367</span> }<a name="line.367"></a> -<span class="sourceLineNo">368</span> masterThreads.remove(masterThread);<a name="line.368"></a> -<span class="sourceLineNo">369</span> return masterThread.getName();<a name="line.369"></a> -<span class="sourceLineNo">370</span> }<a name="line.370"></a> -<span class="sourceLineNo">371</span><a name="line.371"></a> -<span class="sourceLineNo">372</span> /**<a name="line.372"></a> -<span class="sourceLineNo">373</span> * Wait for Mini HBase Cluster to shut down.<a name="line.373"></a> -<span class="sourceLineNo">374</span> * Presumes you've already called {@link #shutdown()}.<a name="line.374"></a> -<span class="sourceLineNo">375</span> */<a name="line.375"></a> -<span class="sourceLineNo">376</span> public void join() {<a name="line.376"></a> -<span class="sourceLineNo">377</span> if (this.regionThreads != null) {<a name="line.377"></a> -<span class="sourceLineNo">378</span> for(Thread t: this.regionThreads) {<a name="line.378"></a> -<span class="sourceLineNo">379</span> if (t.isAlive()) {<a name="line.379"></a> -<span class="sourceLineNo">380</span> try {<a name="line.380"></a> -<span class="sourceLineNo">381</span> Threads.threadDumpingIsAlive(t);<a name="line.381"></a> -<span class="sourceLineNo">382</span> } catch (InterruptedException e) {<a name="line.382"></a> -<span class="sourceLineNo">383</span> LOG.debug("Interrupted", e);<a name="line.383"></a> -<span class="sourceLineNo">384</span> }<a name="line.384"></a> -<span class="sourceLineNo">385</span> }<a name="line.385"></a> -<span class="sourceLineNo">386</span> }<a name="line.386"></a> -<span class="sourceLineNo">387</span> }<a name="line.387"></a> -<span class="sourceLineNo">388</span> if (this.masterThreads != null) {<a name="line.388"></a> -<span class="sourceLineNo">389</span> for (Thread t : this.masterThreads) {<a name="line.389"></a> -<span class="sourceLineNo">390</span> if (t.isAlive()) {<a name="line.390"></a> -<span class="sourceLineNo">391</span> try {<a name="line.391"></a> -<span class="sourceLineNo">392</span> Threads.threadDumpingIsAlive(t);<a name="line.392"></a> -<span class="sourceLineNo">393</span> } catch (InterruptedException e) {<a name="line.393"></a> -<span class="sourceLineNo">394</span> LOG.debug("Interrupted", e);<a name="line.394"></a> -<span class="sourceLineNo">395</span> }<a name="line.395"></a> -<span class="sourceLineNo">396</span> }<a name="line.396"></a> -<span class="sourceLineNo">397</span> }<a name="line.397"></a> -<span class="sourceLineNo">398</span> }<a name="line.398"></a> -<span class="sourceLineNo">399</span> }<a name="line.399"></a> -<span class="sourceLineNo">400</span><a name="line.400"></a> -<span class="sourceLineNo">401</span> /**<a name="line.401"></a> -<span class="sourceLineNo">402</span> * Start the cluster.<a name="line.402"></a> -<span class="sourceLineNo">403</span> */<a name="line.403"></a> -<span class="sourceLineNo">404</span> public void startup() throws IOException {<a name="line.404"></a> -<span class="sourceLineNo">405</span> JVMClusterUtil.startup(this.masterThreads, this.regionThreads);<a name="line.405"></a> -<span class="sourceLineNo">406</span> }<a name="line.406"></a> -<span class="sourceLineNo">407</span><a name="line.407"></a> -<span class="sourceLineNo">408</span> /**<a name="line.408"></a> -<span class="sourceLineNo">409</span> * Shut down the mini HBase cluster<a name="line.409"></a> -<span class="sourceLineNo">410</span> */<a name="line.410"></a> -<span class="sourceLineNo">411</span> public void shutdown() {<a name="line.411"></a> -<span class="sourceLineNo">412</span> JVMClusterUtil.shutdown(this.masterThreads, this.regionThreads);<a name="line.412"></a> -<span class="sourceLineNo">413</span> }<a name="line.413"></a> -<span class="sourceLineNo">414</span><a name="line.414"></a> -<span class="sourceLineNo">415</span> /**<a name="line.415"></a> -<span class="sourceLineNo">416</span> * @param c Configuration to check.<a name="line.416"></a> -<span class="sourceLineNo">417</span> * @return True if a 'local' address in hbase.master value.<a name="line.417"></a> -<span class="sourceLineNo">418</span> */<a name="line.418"></a> -<span class="sourceLineNo">419</span> public static boolean isLocal(final Configuration c) {<a name="line.419"></a> -<span class="sourceLineNo">420</span> boolean mode = c.getBoolean(HConstants.CLUSTER_DISTRIBUTED, HConstants.DEFAULT_CLUSTER_DISTRIBUTED);<a name="line.420"></a> -<span class="sourceLineNo">421</span> return(mode == HConstants.CLUSTER_IS_LOCAL);<a name="line.421"></a> -<span class="sourceLineNo">422</span> }<a name="line.422"></a> -<span class="sourceLineNo">423</span><a name="line.423"></a> -<span class="sourceLineNo">424</span> /**<a name="line.424"></a> -<span class="sourceLineNo">425</span> * Test things basically work.<a name="line.425"></a> -<span class="sourceLineNo">426</span> * @param args<a name="line.426"></a> -<span class="sourceLineNo">427</span> * @throws IOException<a name="line.427"></a> -<span class="sourceLineNo">428</span> */<a name="line.428"></a> -<span class="sourceLineNo">429</span> public static void main(String[] args) throws IOException {<a name="line.429"></a> -<span class="sourceLineNo">430</span> Configuration conf = HBaseConfiguration.create();<a name="line.430"></a> -<span class="sourceLineNo">431</span> LocalHBaseCluster cluster = new LocalHBaseCluster(conf);<a name="line.431"></a> -<span class="sourceLineNo">432</span> cluster.startup();<a name="line.432"></a> -<span class="sourceLineNo">433</span> Connection connection = ConnectionFactory.createConnection(conf);<a name="line.433"></a> -<span class="sourceLineNo">434</span> Admin admin = connection.getAdmin();<a name="line.434"></a> -<span class="sourceLineNo">435</span> try {<a name="line.435"></a> -<span class="sourceLineNo">436</span> HTableDescriptor htd =<a name="line.436"></a> -<span class="sourceLineNo">437</span> new HTableDescriptor(TableName.valueOf(cluster.getClass().getName()));<a name="line.437"></a> -<span class="sourceLineNo">438</span> admin.createTable(htd);<a name="line.438"></a> -<span class="sourceLineNo">439</span> } finally {<a name="line.439"></a> -<span class="sourceLineNo">440</span> admin.close();<a name="line.440"></a> -<span class="sourceLineNo">441</span> }<a name="line.441"></a> -<span class="sourceLineNo">442</span> connection.close();<a name="line.442"></a> -<span class="sourceLineNo">443</span> cluster.shutdown();<a name="line.443"></a> -<span class="sourceLineNo">444</span> }<a name="line.444"></a> -<span class="sourceLineNo">445</span>}<a name="line.445"></a> +<span class="sourceLineNo">312</span> // Ensure that the current active master is not stopped.<a name="line.312"></a> +<span class="sourceLineNo">313</span> // We don't want to return a stopping master as an active master.<a name="line.313"></a> +<span class="sourceLineNo">314</span> if (mt.getMaster().isActiveMaster() && !mt.getMaster().isStopped()) {<a name="line.314"></a> +<span class="sourceLineNo">315</span> return mt.getMaster();<a name="line.315"></a> +<span class="sourceLineNo">316</span> }<a name="line.316"></a> +<span class="sourceLineNo">317</span> }<a name="line.317"></a> +<span class="sourceLineNo">318</span> return null;<a name="line.318"></a> +<span class="sourceLineNo">319</span> }<a name="line.319"></a> +<span class="sourceLineNo">320</span><a name="line.320"></a> +<span class="sourceLineNo">321</span> /**<a name="line.321"></a> +<span class="sourceLineNo">322</span> * @return Read-only list of master threads.<a name="line.322"></a> +<span class="sourceLineNo">323</span> */<a name="line.323"></a> +<span class="sourceLineNo">324</span> public List<JVMClusterUtil.MasterThread> getMasters() {<a name="line.324"></a> +<span class="sourceLineNo">325</span> return Collections.unmodifiableList(this.masterThreads);<a name="line.325"></a> +<span class="sourceLineNo">326</span> }<a name="line.326"></a> +<span class="sourceLineNo">327</span><a name="line.327"></a> +<span class="sourceLineNo">328</span> /**<a name="line.328"></a> +<span class="sourceLineNo">329</span> * @return List of running master servers (Some servers may have been killed<a name="line.329"></a> +<span class="sourceLineNo">330</span> * or aborted during lifetime of cluster; these servers are not included in<a name="line.330"></a> +<span class="sourceLineNo">331</span> * this list).<a name="line.331"></a> +<span class="sourceLineNo">332</span> */<a name="line.332"></a> +<span class="sourceLineNo">333</span> public List<JVMClusterUtil.MasterThread> getLiveMasters() {<a name="line.333"></a> +<span class="sourceLineNo">334</span> List<JVMClusterUtil.MasterThread> liveServers = new ArrayList<>();<a name="line.334"></a> +<span class="sourceLineNo">335</span> List<JVMClusterUtil.MasterThread> list = getMasters();<a name="line.335"></a> +<span class="sourceLineNo">336</span> for (JVMClusterUtil.MasterThread mt: list) {<a name="line.336"></a> +<span class="sourceLineNo">337</span> if (mt.isAlive()) {<a name="line.337"></a> +<span class="sourceLineNo">338</span> liveServers.add(mt);<a name="line.338"></a> +<span class="sourceLineNo">339</span> }<a name="line.339"></a> +<span class="sourceLineNo">340</span> }<a name="line.340"></a> +<span class="sourceLineNo">341</span> return liveServers;<a name="line.341"></a> +<span class="sourceLineNo">342</span> }<a name="line.342"></a> +<span class="sourceLineNo">343</span><a name="line.343"></a> +<span class="sourceLineNo">344</span> /**<a name="line.344"></a> +<span class="sourceLineNo">345</span> * Wait for the specified master to stop. Removes this thread from list of running threads.<a name="line.345"></a> +<span class="sourceLineNo">346</span> * @return Name of master that just went down.<a name="line.346"></a> +<span class="sourceLineNo">347</span> */<a name="line.347"></a> +<span class="sourceLineNo">348</span> public String waitOnMaster(int serverNumber) {<a name="line.348"></a> +<span class="sourceLineNo">349</span> JVMClusterUtil.MasterThread masterThread = this.masterThreads.get(serverNumber);<a name="line.349"></a> +<span class="sourceLineNo">350</span> return waitOnMaster(masterThread);<a name="line.350"></a> +<span class="sourceLineNo">351</span> }<a name="line.351"></a> +<span class="sourceLineNo">352</span><a name="line.352"></a> +<span class="sourceLineNo">353</span> /**<a name="line.353"></a> +<span class="sourceLineNo">354</span> * Wait for the specified master to stop. Removes this thread from list of running threads.<a name="line.354"></a> +<span class="sourceLineNo">355</span> * @return Name of master that just went down.<a name="line.355"></a> +<span class="sourceLineNo">356</span> */<a name="line.356"></a> +<span class="sourceLineNo">357</span> public String waitOnMaster(JVMClusterUtil.MasterThread masterThread) {<a name="line.357"></a> +<span class="sourceLineNo">358</span> while (masterThread.isAlive()) {<a name="line.358"></a> +<span class="sourceLineNo">359</span> try {<a name="line.359"></a> +<span class="sourceLineNo">360</span> LOG.info("Waiting on " + masterThread.getMaster().getServerName().toString());<a name="line.360"></a> +<span class="sourceLineNo">361</span> masterThread.join();<a name="line.361"></a> +<span class="sourceLineNo">362</span> } catch (InterruptedException e) {<a name="line.362"></a> +<span class="sourceLineNo">363</span> e.printStackTrace();<a name="line.363"></a> +<span class="sourceLineNo">364</span> }<a name="line.364"></a> +<span class="sourceLineNo">365</span> }<a name="line.365"></a> +<span class="sourceLineNo">366</span> masterThreads.remove(masterThread);<a name="line.366"></a> +<span class="sourceLineNo">367</span> return masterThread.getName();<a name="line.367"></a> +<span class="sourceLineNo">368</span> }<a name="line.368"></a> +<span class="sourceLineNo">369</span><a name="line.369"></a> +<span class="sourceLineNo">370</span> /**<a name="line.370"></a> +<span class="sourceLineNo">371</span> * Wait for Mini HBase Cluster to shut down.<a name="line.371"></a> +<span class="sourceLineNo">372</span> * Presumes you've already called {@link #shutdown()}.<a name="line.372"></a> +<span class="sourceLineNo">373</span> */<a name="line.373"></a> +<span class="sourceLineNo">374</span> public void join() {<a name="line.374"></a> +<span class="sourceLineNo">375</span> if (this.regionThreads != null) {<a name="line.375"></a> +<span class="sourceLineNo">376</span> for(Thread t: this.regionThreads) {<a name="line.376"></a> +<span class="sourceLineNo">377</span> if (t.isAlive()) {<a name="line.377"></a> +<span class="sourceLineNo">378</span> try {<a name="line.378"></a> +<span class="sourceLineNo">379</span> Threads.threadDumpingIsAlive(t);<a name="line.379"></a> +<span class="sourceLineNo">380</span> } catch (InterruptedException e) {<a name="line.380"></a> +<span class="sourceLineNo">381</span> LOG.debug("Interrupted", e);<a name="line.381"></a> +<span class="sourceLineNo">382</span> }<a name="line.382"></a> +<span class="sourceLineNo">383</span> }<a name="line.383"></a> +<span class="sourceLineNo">384</span> }<a name="line.384"></a> +<span class="sourceLineNo">385</span> }<a name="line.385"></a> +<span class="sourceLineNo">386</span> if (this.masterThreads != null) {<a name="line.386"></a> +<span class="sourceLineNo">387</span> for (Thread t : this.masterThreads) {<a name="line.387"></a> +<span class="sourceLineNo">388</span> if (t.isAlive()) {<a name="line.388"></a> +<span class="sourceLineNo">389</span> try {<a name="line.389"></a> +<span class="sourceLineNo">390</span> Threads.threadDumpingIsAlive(t);<a name="line.390"></a> +<span class="sourceLineNo">391</span> } catch (InterruptedException e) {<a name="line.391"></a> +<span class="sourceLineNo">392</span> LOG.debug("Interrupted", e);<a name="line.392"></a> +<span class="sourceLineNo">393</span> }<a name="line.393"></a> +<span class="sourceLineNo">394</span> }<a name="line.394"></a> +<span class="sourceLineNo">395</span> }<a name="line.395"></a> +<span class="sourceLineNo">396</span> }<a name="line.396"></a> +<span class="sourceLineNo">397</span> }<a name="line.397"></a> +<span class="sourceLineNo">398</span><a name="line.398"></a> +<span class="sourceLineNo">399</span> /**<a name="line.399"></a> +<span class="sourceLineNo">400</span> * Start the cluster.<a name="line.400"></a> +<span class="sourceLineNo">401</span> */<a name="line.401"></a> +<span class="sourceLineNo">402</span> public void startup() throws IOException {<a name="line.402"></a> +<span class="sourceLineNo">403</span> JVMClusterUtil.startup(this.masterThreads, this.regionThreads);<a name="line.403"></a> +<span class="sourceLineNo">404</span> }<a name="line.404"></a> +<span class="sourceLineNo">405</span><a name="line.405"></a> +<span class="sourceLineNo">406</span> /**<a name="line.406"></a> +<span class="sourceLineNo">407</span> * Shut down the mini HBase cluster<a name="line.407"></a> +<span class="sourceLineNo">408</span> */<a name="line.408"></a> +<span class="sourceLineNo">409</span> public void shutdown() {<a name="line.409"></a> +<span class="sourceLineNo">410</span> JVMClusterUtil.shutdown(this.masterThreads, this.regionThreads);<a name="line.410"></a> +<span class="sourceLineNo">411</span> }<a name="line.411"></a> +<span class="sourceLineNo">412</span><a name="line.412"></a> +<span class="sourceLineNo">413</span> /**<a name="line.413"></a> +<span class="sourceLineNo">414</span> * @param c Configuration to check.<a name="line.414"></a> +<span class="sourceLineNo">415</span> * @return True if a 'local' address in hbase.master value.<a name="line.415"></a> +<span class="sourceLineNo">416</span> */<a name="line.416"></a> +<span class="sourceLineNo">417</span> public static boolean isLocal(final Configuration c) {<a name="line.417"></a> +<span class="sourceLineNo">418</span> boolean mode = c.getBoolean(HConstants.CLUSTER_DISTRIBUTED, HConstants.DEFAULT_CLUSTER_DISTRIBUTED);<a name="line.418"></a> +<span class="sourceLineNo">419</span> return(mode == HConstants.CLUSTER_IS_LOCAL);<a name="line.419"></a> +<span class="sourceLineNo">420</span> }<a name="line.420"></a> +<span class="sourceLineNo">421</span><a name="line.421"></a> +<span class="sourceLineNo">422</span> /**<a name="line.422"></a> +<span class="sourceLineNo">423</span> * Test things basically work.<a name="line.423"></a> +<span class="sourceLineNo">424</span> * @param args<a name="line.424"></a> +<span class="sourceLineNo">425</span> * @throws IOException<a name="line.425"></a> +<span class="sourceLineNo">426</span> */<a name="line.426"></a> +<span class="sourceLineNo">427</span> public static void main(String[] args) throws IOException {<a name="line.427"></a> +<span class="sourceLineNo">428</span> Configuration conf = HBaseConfiguration.create();<a name="line.428"></a> +<span class="sourceLineNo">429</span> LocalHBaseCluster cluster = new LocalHBaseCluster(conf);<a name="line.429"></a> +<span class="sourceLineNo">430</span> cluster.startup();<a name="line.430"></a> +<span class="sourceLineNo">431</span> Connection connection = ConnectionFactory.createConnection(conf);<a name="line.431"></a> +<span class="sourceLineNo">432</span> Admin admin = connection.getAdmin();<a name="line.432"></a> +<span class="sourceLineNo">433</span> try {<a name="line.433"></a> +<span class="sourceLineNo">434</span> HTableDescriptor htd =<a name="line.434"></a> +<span class="sourceLineNo">435</span> new HTableDescriptor(TableName.valueOf(cluster.getClass().getName()));<a name="line.435"></a> +<span class="sourceLineNo">436</span> admin.createTable(htd);<a name="line.436"></a> +<span class="sourceLineNo">437</span> } finally {<a name="line.437"></a> +<span class="sourceLineNo">438</span> admin.close();<a name="line.438"></a> +<span class="sourceLineNo">439</span> }<a name="line.439"></a> +<span class="sourceLineNo">440</span> connection.close();<a name="line.440"></a> +<span class="sourceLineNo">441</span> cluster.shutdown();<a name="line.441"></a> +<span class="sourceLineNo">442</span> }<a name="line.442"></a> +<span class="sourceLineNo">443</span>}<a name="line.443"></a>
