http://git-wip-us.apache.org/repos/asf/hbase-site/blob/f3d62514/apidocs/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html ---------------------------------------------------------------------- diff --git a/apidocs/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html b/apidocs/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html index 8fd675f..2950fc7 100644 --- a/apidocs/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html +++ b/apidocs/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html @@ -115,7 +115,7 @@ var activeTableTab = "activeTableTab"; <hr> <br> <pre>@InterfaceAudience.Public -public class <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.47">TsvImporterMapper</a> +public class <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.49">TsvImporterMapper</a> extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable,org.apache.hadoop.io.Text,<a href="../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>></pre> <div class="block">Write table content out to files in hdfs.</div> </li> @@ -272,7 +272,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockList"> <li class="blockList"> <h4>ts</h4> -<pre>protected long <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.52">ts</a></pre> +<pre>protected long <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.54">ts</a></pre> <div class="block">Timestamp for all inserted rows</div> </li> </ul> @@ -282,7 +282,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockList"> <li class="blockList"> <h4>parser</h4> -<pre>protected org.apache.hadoop.hbase.mapreduce.ImportTsv.TsvParser <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.64">parser</a></pre> +<pre>protected org.apache.hadoop.hbase.mapreduce.ImportTsv.TsvParser <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.66">parser</a></pre> </li> </ul> <a name="conf"> @@ -291,7 +291,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockList"> <li class="blockList"> <h4>conf</h4> -<pre>protected org.apache.hadoop.conf.Configuration <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.66">conf</a></pre> +<pre>protected org.apache.hadoop.conf.Configuration <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.68">conf</a></pre> </li> </ul> <a name="cellVisibilityExpr"> @@ -300,7 +300,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockList"> <li class="blockList"> <h4>cellVisibilityExpr</h4> -<pre>protected <a href="https://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/mapreduce/TsvImporterMapper.html#line.68">cellVisibilityExpr</a></pre> +<pre>protected <a href="https://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/mapreduce/TsvImporterMapper.html#line.70">cellVisibilityExpr</a></pre> </li> </ul> <a name="ttl"> @@ -309,7 +309,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockList"> <li class="blockList"> <h4>ttl</h4> -<pre>protected long <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.70">ttl</a></pre> +<pre>protected long <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.72">ttl</a></pre> </li> </ul> <a name="kvCreator"> @@ -318,7 +318,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockListLast"> <li class="blockList"> <h4>kvCreator</h4> -<pre>protected <a href="../../../../../org/apache/hadoop/hbase/mapreduce/CellCreator.html" title="class in org.apache.hadoop.hbase.mapreduce">CellCreator</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.72">kvCreator</a></pre> +<pre>protected <a href="../../../../../org/apache/hadoop/hbase/mapreduce/CellCreator.html" title="class in org.apache.hadoop.hbase.mapreduce">CellCreator</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.74">kvCreator</a></pre> </li> </ul> </li> @@ -335,7 +335,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockListLast"> <li class="blockList"> <h4>TsvImporterMapper</h4> -<pre>public <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.47">TsvImporterMapper</a>()</pre> +<pre>public <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.49">TsvImporterMapper</a>()</pre> </li> </ul> </li> @@ -352,7 +352,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockList"> <li class="blockList"> <h4>getTs</h4> -<pre>public long <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.79">getTs</a>()</pre> +<pre>public long <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.81">getTs</a>()</pre> </li> </ul> <a name="getSkipBadLines--"> @@ -361,7 +361,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockList"> <li class="blockList"> <h4>getSkipBadLines</h4> -<pre>public boolean <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.83">getSkipBadLines</a>()</pre> +<pre>public boolean <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.85">getSkipBadLines</a>()</pre> </li> </ul> <a name="getBadLineCount--"> @@ -370,7 +370,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockList"> <li class="blockList"> <h4>getBadLineCount</h4> -<pre>public org.apache.hadoop.mapreduce.Counter <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.87">getBadLineCount</a>()</pre> +<pre>public org.apache.hadoop.mapreduce.Counter <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.89">getBadLineCount</a>()</pre> </li> </ul> <a name="incrementBadLineCount-int-"> @@ -379,7 +379,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockList"> <li class="blockList"> <h4>incrementBadLineCount</h4> -<pre>public void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.91">incrementBadLineCount</a>(int count)</pre> +<pre>public void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.93">incrementBadLineCount</a>(int count)</pre> </li> </ul> <a name="setup-org.apache.hadoop.mapreduce.Mapper.Context-"> @@ -388,7 +388,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockList"> <li class="blockList"> <h4>setup</h4> -<pre>protected void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.104">setup</a>(org.apache.hadoop.mapreduce.Mapper.Context context)</pre> +<pre>protected void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.106">setup</a>(org.apache.hadoop.mapreduce.Mapper.Context context)</pre> <div class="block">Handles initializing this class with objects specific to it (i.e., the parser). Common initialization that might be leveraged by a subsclass is done in <code>doSetup</code>. Hence a subclass may choose to override this method @@ -407,7 +407,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockList"> <li class="blockList"> <h4>doSetup</h4> -<pre>protected void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.121">doSetup</a>(org.apache.hadoop.mapreduce.Mapper.Context context)</pre> +<pre>protected void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.123">doSetup</a>(org.apache.hadoop.mapreduce.Mapper.Context context)</pre> <div class="block">Handles common parameter initialization that a subclass might want to leverage.</div> <dl> <dt><span class="paramLabel">Parameters:</span></dt> @@ -421,7 +421,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockList"> <li class="blockList"> <h4>map</h4> -<pre>public void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.149">map</a>(org.apache.hadoop.io.LongWritable offset, +<pre>public void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.151">map</a>(org.apache.hadoop.io.LongWritable offset, org.apache.hadoop.io.Text value, org.apache.hadoop.mapreduce.Mapper.Context context) throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> @@ -440,7 +440,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockListLast"> <li class="blockList"> <h4>populatePut</h4> -<pre>protected void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.206">populatePut</a>(byte[] lineBytes, +<pre>protected void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#line.209">populatePut</a>(byte[] lineBytes, org.apache.hadoop.hbase.mapreduce.ImportTsv.TsvParser.ParsedLine parsed, <a href="../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a> put, int i)
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/f3d62514/apidocs/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html ---------------------------------------------------------------------- diff --git a/apidocs/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html b/apidocs/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html index 8b5b32b..6de80a0 100644 --- a/apidocs/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html +++ b/apidocs/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html @@ -115,7 +115,7 @@ var activeTableTab = "activeTableTab"; <hr> <br> <pre>@InterfaceAudience.Public -public class <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html#line.36">TsvImporterTextMapper</a> +public class <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html#line.38">TsvImporterTextMapper</a> extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable,org.apache.hadoop.io.Text,<a href="../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,org.apache.hadoop.io.Text></pre> <div class="block">Write table content out to map output files.</div> </li> @@ -220,7 +220,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockListLast"> <li class="blockList"> <h4>TsvImporterTextMapper</h4> -<pre>public <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html#line.36">TsvImporterTextMapper</a>()</pre> +<pre>public <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html#line.38">TsvImporterTextMapper</a>()</pre> </li> </ul> </li> @@ -237,7 +237,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockList"> <li class="blockList"> <h4>getSkipBadLines</h4> -<pre>public boolean <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html#line.50">getSkipBadLines</a>()</pre> +<pre>public boolean <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html#line.52">getSkipBadLines</a>()</pre> </li> </ul> <a name="getBadLineCount--"> @@ -246,7 +246,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockList"> <li class="blockList"> <h4>getBadLineCount</h4> -<pre>public org.apache.hadoop.mapreduce.Counter <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html#line.54">getBadLineCount</a>()</pre> +<pre>public org.apache.hadoop.mapreduce.Counter <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html#line.56">getBadLineCount</a>()</pre> </li> </ul> <a name="incrementBadLineCount-int-"> @@ -255,7 +255,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockList"> <li class="blockList"> <h4>incrementBadLineCount</h4> -<pre>public void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html#line.58">incrementBadLineCount</a>(int count)</pre> +<pre>public void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html#line.60">incrementBadLineCount</a>(int count)</pre> </li> </ul> <a name="setup-org.apache.hadoop.mapreduce.Mapper.Context-"> @@ -264,7 +264,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockList"> <li class="blockList"> <h4>setup</h4> -<pre>protected void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html#line.71">setup</a>(org.apache.hadoop.mapreduce.Mapper.Context context)</pre> +<pre>protected void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html#line.73">setup</a>(org.apache.hadoop.mapreduce.Mapper.Context context)</pre> <div class="block">Handles initializing this class with objects specific to it (i.e., the parser). Common initialization that might be leveraged by a subclass is done in <code>doSetup</code>. Hence a subclass may choose to override this method @@ -283,7 +283,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockList"> <li class="blockList"> <h4>doSetup</h4> -<pre>protected void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html#line.86">doSetup</a>(org.apache.hadoop.mapreduce.Mapper.Context context)</pre> +<pre>protected void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html#line.88">doSetup</a>(org.apache.hadoop.mapreduce.Mapper.Context context)</pre> <div class="block">Handles common parameter initialization that a subclass might want to leverage.</div> <dl> <dt><span class="paramLabel">Parameters:</span></dt> @@ -297,7 +297,7 @@ extends org.apache.hadoop.mapreduce.Mapper<org.apache.hadoop.io.LongWritable, <ul class="blockListLast"> <li class="blockList"> <h4>map</h4> -<pre>public void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html#line.107">map</a>(org.apache.hadoop.io.LongWritable offset, +<pre>public void <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html#line.109">map</a>(org.apache.hadoop.io.LongWritable offset, org.apache.hadoop.io.Text value, org.apache.hadoop.mapreduce.Mapper.Context context) throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> http://git-wip-us.apache.org/repos/asf/hbase-site/blob/f3d62514/apidocs/org/apache/hadoop/hbase/mapreduce/WALPlayer.html ---------------------------------------------------------------------- diff --git a/apidocs/org/apache/hadoop/hbase/mapreduce/WALPlayer.html b/apidocs/org/apache/hadoop/hbase/mapreduce/WALPlayer.html index 0b077d2..ae2d067 100644 --- a/apidocs/org/apache/hadoop/hbase/mapreduce/WALPlayer.html +++ b/apidocs/org/apache/hadoop/hbase/mapreduce/WALPlayer.html @@ -397,7 +397,7 @@ implements org.apache.hadoop.util.Tool</pre> <ul class="blockList"> <li class="blockList"> <h4>createSubmittableJob</h4> -<pre>public org.apache.hadoop.mapreduce.Job <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/WALPlayer.html#line.267">createSubmittableJob</a>(<a href="https://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 org.apache.hadoop.mapreduce.Job <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/WALPlayer.html#line.269">createSubmittableJob</a>(<a href="https://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="https://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">Sets up the actual job.</div> <dl> @@ -416,7 +416,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/WALPlayer.html#line.382">main</a>(<a href="https://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/WALPlayer.html#line.384">main</a>(<a href="https://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="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre> <div class="block">Main entry point.</div> <dl> @@ -433,7 +433,7 @@ implements org.apache.hadoop.util.Tool</pre> <ul class="blockListLast"> <li class="blockList"> <h4>run</h4> -<pre>public int <a href="../../../../../src-html/org/apache/hadoop/hbase/mapreduce/WALPlayer.html#line.388">run</a>(<a href="https://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/WALPlayer.html#line.390">run</a>(<a href="https://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="https://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> http://git-wip-us.apache.org/repos/asf/hbase-site/blob/f3d62514/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 9aa09f0..6900b04 100644 --- a/apidocs/src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html +++ b/apidocs/src-html/org/apache/hadoop/hbase/LocalHBaseCluster.html @@ -306,159 +306,162 @@ <span class="sourceLineNo">298</span> LOG.info("Waiting on " + rst.getRegionServer().toString());<a name="line.298"></a> <span class="sourceLineNo">299</span> rst.join();<a name="line.299"></a> <span class="sourceLineNo">300</span> } catch (InterruptedException e) {<a name="line.300"></a> -<span class="sourceLineNo">301</span> e.printStackTrace();<a name="line.301"></a> -<span class="sourceLineNo">302</span> }<a name="line.302"></a> -<span class="sourceLineNo">303</span> }<a name="line.303"></a> -<span class="sourceLineNo">304</span> regionThreads.remove(rst);<a name="line.304"></a> -<span class="sourceLineNo">305</span> return rst.getName();<a name="line.305"></a> -<span class="sourceLineNo">306</span> }<a name="line.306"></a> -<span class="sourceLineNo">307</span><a name="line.307"></a> -<span class="sourceLineNo">308</span> /**<a name="line.308"></a> -<span class="sourceLineNo">309</span> * @return the HMaster thread<a name="line.309"></a> -<span class="sourceLineNo">310</span> */<a name="line.310"></a> -<span class="sourceLineNo">311</span> public HMaster getMaster(int serverNumber) {<a name="line.311"></a> -<span class="sourceLineNo">312</span> return masterThreads.get(serverNumber).getMaster();<a name="line.312"></a> -<span class="sourceLineNo">313</span> }<a name="line.313"></a> -<span class="sourceLineNo">314</span><a name="line.314"></a> -<span class="sourceLineNo">315</span> /**<a name="line.315"></a> -<span class="sourceLineNo">316</span> * Gets the current active master, if available. If no active master, returns<a name="line.316"></a> -<span class="sourceLineNo">317</span> * null.<a name="line.317"></a> -<span class="sourceLineNo">318</span> * @return the HMaster for the active master<a name="line.318"></a> -<span class="sourceLineNo">319</span> */<a name="line.319"></a> -<span class="sourceLineNo">320</span> public HMaster getActiveMaster() {<a name="line.320"></a> -<span class="sourceLineNo">321</span> for (JVMClusterUtil.MasterThread mt : masterThreads) {<a name="line.321"></a> -<span class="sourceLineNo">322</span> // Ensure that the current active master is not stopped.<a name="line.322"></a> -<span class="sourceLineNo">323</span> // We don't want to return a stopping master as an active master.<a name="line.323"></a> -<span class="sourceLineNo">324</span> if (mt.getMaster().isActiveMaster() && !mt.getMaster().isStopped()) {<a name="line.324"></a> -<span class="sourceLineNo">325</span> return mt.getMaster();<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> return null;<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> /**<a name="line.331"></a> -<span class="sourceLineNo">332</span> * @return Read-only list of master threads.<a name="line.332"></a> -<span class="sourceLineNo">333</span> */<a name="line.333"></a> -<span class="sourceLineNo">334</span> public List<JVMClusterUtil.MasterThread> getMasters() {<a name="line.334"></a> -<span class="sourceLineNo">335</span> return Collections.unmodifiableList(this.masterThreads);<a name="line.335"></a> -<span class="sourceLineNo">336</span> }<a name="line.336"></a> -<span class="sourceLineNo">337</span><a name="line.337"></a> -<span class="sourceLineNo">338</span> /**<a name="line.338"></a> -<span class="sourceLineNo">339</span> * @return List of running master servers (Some servers may have been killed<a name="line.339"></a> -<span class="sourceLineNo">340</span> * or aborted during lifetime of cluster; these servers are not included in<a name="line.340"></a> -<span class="sourceLineNo">341</span> * this list).<a name="line.341"></a> -<span class="sourceLineNo">342</span> */<a name="line.342"></a> -<span class="sourceLineNo">343</span> public List<JVMClusterUtil.MasterThread> getLiveMasters() {<a name="line.343"></a> -<span class="sourceLineNo">344</span> List<JVMClusterUtil.MasterThread> liveServers = new ArrayList<>();<a name="line.344"></a> -<span class="sourceLineNo">345</span> List<JVMClusterUtil.MasterThread> list = getMasters();<a name="line.345"></a> -<span class="sourceLineNo">346</span> for (JVMClusterUtil.MasterThread mt: list) {<a name="line.346"></a> -<span class="sourceLineNo">347</span> if (mt.isAlive()) {<a name="line.347"></a> -<span class="sourceLineNo">348</span> liveServers.add(mt);<a name="line.348"></a> -<span class="sourceLineNo">349</span> }<a name="line.349"></a> -<span class="sourceLineNo">350</span> }<a name="line.350"></a> -<span class="sourceLineNo">351</span> return liveServers;<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> /**<a name="line.354"></a> -<span class="sourceLineNo">355</span> * Wait for the specified master to stop. Removes this thread from list of running threads.<a name="line.355"></a> -<span class="sourceLineNo">356</span> * @return Name of master that just went down.<a name="line.356"></a> -<span class="sourceLineNo">357</span> */<a name="line.357"></a> -<span class="sourceLineNo">358</span> public String waitOnMaster(int serverNumber) {<a name="line.358"></a> -<span class="sourceLineNo">359</span> JVMClusterUtil.MasterThread masterThread = this.masterThreads.get(serverNumber);<a name="line.359"></a> -<span class="sourceLineNo">360</span> return waitOnMaster(masterThread);<a name="line.360"></a> -<span class="sourceLineNo">361</span> }<a name="line.361"></a> -<span class="sourceLineNo">362</span><a name="line.362"></a> -<span class="sourceLineNo">363</span> /**<a name="line.363"></a> -<span class="sourceLineNo">364</span> * Wait for the specified master to stop. Removes this thread from list of running threads.<a name="line.364"></a> -<span class="sourceLineNo">365</span> * @return Name of master that just went down.<a name="line.365"></a> -<span class="sourceLineNo">366</span> */<a name="line.366"></a> -<span class="sourceLineNo">367</span> public String waitOnMaster(JVMClusterUtil.MasterThread masterThread) {<a name="line.367"></a> -<span class="sourceLineNo">368</span> while (masterThread.isAlive()) {<a name="line.368"></a> -<span class="sourceLineNo">369</span> try {<a name="line.369"></a> -<span class="sourceLineNo">370</span> LOG.info("Waiting on " + masterThread.getMaster().getServerName().toString());<a name="line.370"></a> -<span class="sourceLineNo">371</span> masterThread.join();<a name="line.371"></a> -<span class="sourceLineNo">372</span> } catch (InterruptedException e) {<a name="line.372"></a> -<span class="sourceLineNo">373</span> e.printStackTrace();<a name="line.373"></a> -<span class="sourceLineNo">374</span> }<a name="line.374"></a> -<span class="sourceLineNo">375</span> }<a name="line.375"></a> -<span class="sourceLineNo">376</span> masterThreads.remove(masterThread);<a name="line.376"></a> -<span class="sourceLineNo">377</span> return masterThread.getName();<a name="line.377"></a> -<span class="sourceLineNo">378</span> }<a name="line.378"></a> -<span class="sourceLineNo">379</span><a name="line.379"></a> -<span class="sourceLineNo">380</span> /**<a name="line.380"></a> -<span class="sourceLineNo">381</span> * Wait for Mini HBase Cluster to shut down.<a name="line.381"></a> -<span class="sourceLineNo">382</span> * Presumes you've already called {@link #shutdown()}.<a name="line.382"></a> -<span class="sourceLineNo">383</span> */<a name="line.383"></a> -<span class="sourceLineNo">384</span> public void join() {<a name="line.384"></a> -<span class="sourceLineNo">385</span> if (this.regionThreads != null) {<a name="line.385"></a> -<span class="sourceLineNo">386</span> for(Thread t: this.regionThreads) {<a name="line.386"></a> -<span class="sourceLineNo">387</span> if (t.isAlive()) {<a name="line.387"></a> -<span class="sourceLineNo">388</span> try {<a name="line.388"></a> -<span class="sourceLineNo">389</span> Threads.threadDumpingIsAlive(t);<a name="line.389"></a> -<span class="sourceLineNo">390</span> } catch (InterruptedException e) {<a name="line.390"></a> -<span class="sourceLineNo">391</span> LOG.debug("Interrupted", e);<a name="line.391"></a> -<span class="sourceLineNo">392</span> }<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> if (this.masterThreads != null) {<a name="line.396"></a> -<span class="sourceLineNo">397</span> for (Thread t : this.masterThreads) {<a name="line.397"></a> -<span class="sourceLineNo">398</span> if (t.isAlive()) {<a name="line.398"></a> -<span class="sourceLineNo">399</span> try {<a name="line.399"></a> -<span class="sourceLineNo">400</span> Threads.threadDumpingIsAlive(t);<a name="line.400"></a> -<span class="sourceLineNo">401</span> } catch (InterruptedException e) {<a name="line.401"></a> -<span class="sourceLineNo">402</span> LOG.debug("Interrupted", e);<a name="line.402"></a> -<span class="sourceLineNo">403</span> }<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> }<a name="line.407"></a> -<span class="sourceLineNo">408</span><a name="line.408"></a> -<span class="sourceLineNo">409</span> /**<a name="line.409"></a> -<span class="sourceLineNo">410</span> * Start the cluster.<a name="line.410"></a> -<span class="sourceLineNo">411</span> */<a name="line.411"></a> -<span class="sourceLineNo">412</span> public void startup() throws IOException {<a name="line.412"></a> -<span class="sourceLineNo">413</span> JVMClusterUtil.startup(this.masterThreads, this.regionThreads);<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> /**<a name="line.416"></a> -<span class="sourceLineNo">417</span> * Shut down the mini HBase cluster<a name="line.417"></a> -<span class="sourceLineNo">418</span> */<a name="line.418"></a> -<span class="sourceLineNo">419</span> public void shutdown() {<a name="line.419"></a> -<span class="sourceLineNo">420</span> JVMClusterUtil.shutdown(this.masterThreads, this.regionThreads);<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> /**<a name="line.423"></a> -<span class="sourceLineNo">424</span> * @param c Configuration to check.<a name="line.424"></a> -<span class="sourceLineNo">425</span> * @return True if a 'local' address in hbase.master value.<a name="line.425"></a> -<span class="sourceLineNo">426</span> */<a name="line.426"></a> -<span class="sourceLineNo">427</span> public static boolean isLocal(final Configuration c) {<a name="line.427"></a> -<span class="sourceLineNo">428</span> boolean mode = c.getBoolean(HConstants.CLUSTER_DISTRIBUTED, HConstants.DEFAULT_CLUSTER_DISTRIBUTED);<a name="line.428"></a> -<span class="sourceLineNo">429</span> return(mode == HConstants.CLUSTER_IS_LOCAL);<a name="line.429"></a> -<span class="sourceLineNo">430</span> }<a name="line.430"></a> -<span class="sourceLineNo">431</span><a name="line.431"></a> -<span class="sourceLineNo">432</span> /**<a name="line.432"></a> -<span class="sourceLineNo">433</span> * Test things basically work.<a name="line.433"></a> -<span class="sourceLineNo">434</span> * @param args<a name="line.434"></a> -<span class="sourceLineNo">435</span> * @throws IOException<a name="line.435"></a> -<span class="sourceLineNo">436</span> */<a name="line.436"></a> -<span class="sourceLineNo">437</span> public static void main(String[] args) throws IOException {<a name="line.437"></a> -<span class="sourceLineNo">438</span> Configuration conf = HBaseConfiguration.create();<a name="line.438"></a> -<span class="sourceLineNo">439</span> LocalHBaseCluster cluster = new LocalHBaseCluster(conf);<a name="line.439"></a> -<span class="sourceLineNo">440</span> cluster.startup();<a name="line.440"></a> -<span class="sourceLineNo">441</span> Connection connection = ConnectionFactory.createConnection(conf);<a name="line.441"></a> -<span class="sourceLineNo">442</span> Admin admin = connection.getAdmin();<a name="line.442"></a> -<span class="sourceLineNo">443</span> try {<a name="line.443"></a> -<span class="sourceLineNo">444</span> HTableDescriptor htd =<a name="line.444"></a> -<span class="sourceLineNo">445</span> new HTableDescriptor(TableName.valueOf(cluster.getClass().getName()));<a name="line.445"></a> -<span class="sourceLineNo">446</span> admin.createTable(htd);<a name="line.446"></a> -<span class="sourceLineNo">447</span> } finally {<a name="line.447"></a> -<span class="sourceLineNo">448</span> admin.close();<a name="line.448"></a> -<span class="sourceLineNo">449</span> }<a name="line.449"></a> -<span class="sourceLineNo">450</span> connection.close();<a name="line.450"></a> -<span class="sourceLineNo">451</span> cluster.shutdown();<a name="line.451"></a> -<span class="sourceLineNo">452</span> }<a name="line.452"></a> -<span class="sourceLineNo">453</span>}<a name="line.453"></a> +<span class="sourceLineNo">301</span> LOG.error("Interrupted while waiting for {} to finish. Retrying join", rst.getName(), e);<a name="line.301"></a> +<span class="sourceLineNo">302</span> Thread.currentThread().interrupt();<a name="line.302"></a> +<span class="sourceLineNo">303</span> }<a name="line.303"></a> +<span class="sourceLineNo">304</span> }<a name="line.304"></a> +<span class="sourceLineNo">305</span> regionThreads.remove(rst);<a name="line.305"></a> +<span class="sourceLineNo">306</span> return rst.getName();<a name="line.306"></a> +<span class="sourceLineNo">307</span> }<a name="line.307"></a> +<span class="sourceLineNo">308</span><a name="line.308"></a> +<span class="sourceLineNo">309</span> /**<a name="line.309"></a> +<span class="sourceLineNo">310</span> * @return the HMaster thread<a name="line.310"></a> +<span class="sourceLineNo">311</span> */<a name="line.311"></a> +<span class="sourceLineNo">312</span> public HMaster getMaster(int serverNumber) {<a name="line.312"></a> +<span class="sourceLineNo">313</span> return masterThreads.get(serverNumber).getMaster();<a name="line.313"></a> +<span class="sourceLineNo">314</span> }<a name="line.314"></a> +<span class="sourceLineNo">315</span><a name="line.315"></a> +<span class="sourceLineNo">316</span> /**<a name="line.316"></a> +<span class="sourceLineNo">317</span> * Gets the current active master, if available. If no active master, returns<a name="line.317"></a> +<span class="sourceLineNo">318</span> * null.<a name="line.318"></a> +<span class="sourceLineNo">319</span> * @return the HMaster for the active master<a name="line.319"></a> +<span class="sourceLineNo">320</span> */<a name="line.320"></a> +<span class="sourceLineNo">321</span> public HMaster getActiveMaster() {<a name="line.321"></a> +<span class="sourceLineNo">322</span> for (JVMClusterUtil.MasterThread mt : masterThreads) {<a name="line.322"></a> +<span class="sourceLineNo">323</span> // Ensure that the current active master is not stopped.<a name="line.323"></a> +<span class="sourceLineNo">324</span> // We don't want to return a stopping master as an active master.<a name="line.324"></a> +<span class="sourceLineNo">325</span> if (mt.getMaster().isActiveMaster() && !mt.getMaster().isStopped()) {<a name="line.325"></a> +<span class="sourceLineNo">326</span> return mt.getMaster();<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 null;<a name="line.329"></a> +<span class="sourceLineNo">330</span> }<a name="line.330"></a> +<span class="sourceLineNo">331</span><a name="line.331"></a> +<span class="sourceLineNo">332</span> /**<a name="line.332"></a> +<span class="sourceLineNo">333</span> * @return Read-only list of master threads.<a name="line.333"></a> +<span class="sourceLineNo">334</span> */<a name="line.334"></a> +<span class="sourceLineNo">335</span> public List<JVMClusterUtil.MasterThread> getMasters() {<a name="line.335"></a> +<span class="sourceLineNo">336</span> return Collections.unmodifiableList(this.masterThreads);<a name="line.336"></a> +<span class="sourceLineNo">337</span> }<a name="line.337"></a> +<span class="sourceLineNo">338</span><a name="line.338"></a> +<span class="sourceLineNo">339</span> /**<a name="line.339"></a> +<span class="sourceLineNo">340</span> * @return List of running master servers (Some servers may have been killed<a name="line.340"></a> +<span class="sourceLineNo">341</span> * or aborted during lifetime of cluster; these servers are not included in<a name="line.341"></a> +<span class="sourceLineNo">342</span> * this list).<a name="line.342"></a> +<span class="sourceLineNo">343</span> */<a name="line.343"></a> +<span class="sourceLineNo">344</span> public List<JVMClusterUtil.MasterThread> getLiveMasters() {<a name="line.344"></a> +<span class="sourceLineNo">345</span> List<JVMClusterUtil.MasterThread> liveServers = new ArrayList<>();<a name="line.345"></a> +<span class="sourceLineNo">346</span> List<JVMClusterUtil.MasterThread> list = getMasters();<a name="line.346"></a> +<span class="sourceLineNo">347</span> for (JVMClusterUtil.MasterThread mt: list) {<a name="line.347"></a> +<span class="sourceLineNo">348</span> if (mt.isAlive()) {<a name="line.348"></a> +<span class="sourceLineNo">349</span> liveServers.add(mt);<a name="line.349"></a> +<span class="sourceLineNo">350</span> }<a name="line.350"></a> +<span class="sourceLineNo">351</span> }<a name="line.351"></a> +<span class="sourceLineNo">352</span> return liveServers;<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(int serverNumber) {<a name="line.359"></a> +<span class="sourceLineNo">360</span> JVMClusterUtil.MasterThread masterThread = this.masterThreads.get(serverNumber);<a name="line.360"></a> +<span class="sourceLineNo">361</span> return waitOnMaster(masterThread);<a name="line.361"></a> +<span class="sourceLineNo">362</span> }<a name="line.362"></a> +<span class="sourceLineNo">363</span><a name="line.363"></a> +<span class="sourceLineNo">364</span> /**<a name="line.364"></a> +<span class="sourceLineNo">365</span> * Wait for the specified master to stop. Removes this thread from list of running threads.<a name="line.365"></a> +<span class="sourceLineNo">366</span> * @return Name of master that just went down.<a name="line.366"></a> +<span class="sourceLineNo">367</span> */<a name="line.367"></a> +<span class="sourceLineNo">368</span> public String waitOnMaster(JVMClusterUtil.MasterThread masterThread) {<a name="line.368"></a> +<span class="sourceLineNo">369</span> while (masterThread.isAlive()) {<a name="line.369"></a> +<span class="sourceLineNo">370</span> try {<a name="line.370"></a> +<span class="sourceLineNo">371</span> LOG.info("Waiting on " + masterThread.getMaster().getServerName().toString());<a name="line.371"></a> +<span class="sourceLineNo">372</span> masterThread.join();<a name="line.372"></a> +<span class="sourceLineNo">373</span> } catch (InterruptedException e) {<a name="line.373"></a> +<span class="sourceLineNo">374</span> LOG.error("Interrupted while waiting for {} to finish. Retrying join",<a name="line.374"></a> +<span class="sourceLineNo">375</span> masterThread.getName(), e);<a name="line.375"></a> +<span class="sourceLineNo">376</span> Thread.currentThread().interrupt();<a name="line.376"></a> +<span class="sourceLineNo">377</span> }<a name="line.377"></a> +<span class="sourceLineNo">378</span> }<a name="line.378"></a> +<span class="sourceLineNo">379</span> masterThreads.remove(masterThread);<a name="line.379"></a> +<span class="sourceLineNo">380</span> return masterThread.getName();<a name="line.380"></a> +<span class="sourceLineNo">381</span> }<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> * Wait for Mini HBase Cluster to shut down.<a name="line.384"></a> +<span class="sourceLineNo">385</span> * Presumes you've already called {@link #shutdown()}.<a name="line.385"></a> +<span class="sourceLineNo">386</span> */<a name="line.386"></a> +<span class="sourceLineNo">387</span> public void join() {<a name="line.387"></a> +<span class="sourceLineNo">388</span> if (this.regionThreads != null) {<a name="line.388"></a> +<span class="sourceLineNo">389</span> for(Thread t: this.regionThreads) {<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> if (this.masterThreads != null) {<a name="line.399"></a> +<span class="sourceLineNo">400</span> for (Thread t : this.masterThreads) {<a name="line.400"></a> +<span class="sourceLineNo">401</span> if (t.isAlive()) {<a name="line.401"></a> +<span class="sourceLineNo">402</span> try {<a name="line.402"></a> +<span class="sourceLineNo">403</span> Threads.threadDumpingIsAlive(t);<a name="line.403"></a> +<span class="sourceLineNo">404</span> } catch (InterruptedException e) {<a name="line.404"></a> +<span class="sourceLineNo">405</span> LOG.debug("Interrupted", e);<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> }<a name="line.409"></a> +<span class="sourceLineNo">410</span> }<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> * Start the cluster.<a name="line.413"></a> +<span class="sourceLineNo">414</span> */<a name="line.414"></a> +<span class="sourceLineNo">415</span> public void startup() throws IOException {<a name="line.415"></a> +<span class="sourceLineNo">416</span> JVMClusterUtil.startup(this.masterThreads, this.regionThreads);<a name="line.416"></a> +<span class="sourceLineNo">417</span> }<a name="line.417"></a> +<span class="sourceLineNo">418</span><a name="line.418"></a> +<span class="sourceLineNo">419</span> /**<a name="line.419"></a> +<span class="sourceLineNo">420</span> * Shut down the mini HBase cluster<a name="line.420"></a> +<span class="sourceLineNo">421</span> */<a name="line.421"></a> +<span class="sourceLineNo">422</span> public void shutdown() {<a name="line.422"></a> +<span class="sourceLineNo">423</span> JVMClusterUtil.shutdown(this.masterThreads, this.regionThreads);<a name="line.423"></a> +<span class="sourceLineNo">424</span> }<a name="line.424"></a> +<span class="sourceLineNo">425</span><a name="line.425"></a> +<span class="sourceLineNo">426</span> /**<a name="line.426"></a> +<span class="sourceLineNo">427</span> * @param c Configuration to check.<a name="line.427"></a> +<span class="sourceLineNo">428</span> * @return True if a 'local' address in hbase.master value.<a name="line.428"></a> +<span class="sourceLineNo">429</span> */<a name="line.429"></a> +<span class="sourceLineNo">430</span> public static boolean isLocal(final Configuration c) {<a name="line.430"></a> +<span class="sourceLineNo">431</span> boolean mode = c.getBoolean(HConstants.CLUSTER_DISTRIBUTED, HConstants.DEFAULT_CLUSTER_DISTRIBUTED);<a name="line.431"></a> +<span class="sourceLineNo">432</span> return(mode == HConstants.CLUSTER_IS_LOCAL);<a name="line.432"></a> +<span class="sourceLineNo">433</span> }<a name="line.433"></a> +<span class="sourceLineNo">434</span><a name="line.434"></a> +<span class="sourceLineNo">435</span> /**<a name="line.435"></a> +<span class="sourceLineNo">436</span> * Test things basically work.<a name="line.436"></a> +<span class="sourceLineNo">437</span> * @param args<a name="line.437"></a> +<span class="sourceLineNo">438</span> * @throws IOException<a name="line.438"></a> +<span class="sourceLineNo">439</span> */<a name="line.439"></a> +<span class="sourceLineNo">440</span> public static void main(String[] args) throws IOException {<a name="line.440"></a> +<span class="sourceLineNo">441</span> Configuration conf = HBaseConfiguration.create();<a name="line.441"></a> +<span class="sourceLineNo">442</span> LocalHBaseCluster cluster = new LocalHBaseCluster(conf);<a name="line.442"></a> +<span class="sourceLineNo">443</span> cluster.startup();<a name="line.443"></a> +<span class="sourceLineNo">444</span> Connection connection = ConnectionFactory.createConnection(conf);<a name="line.444"></a> +<span class="sourceLineNo">445</span> Admin admin = connection.getAdmin();<a name="line.445"></a> +<span class="sourceLineNo">446</span> try {<a name="line.446"></a> +<span class="sourceLineNo">447</span> HTableDescriptor htd =<a name="line.447"></a> +<span class="sourceLineNo">448</span> new HTableDescriptor(TableName.valueOf(cluster.getClass().getName()));<a name="line.448"></a> +<span class="sourceLineNo">449</span> admin.createTable(htd);<a name="line.449"></a> +<span class="sourceLineNo">450</span> } finally {<a name="line.450"></a> +<span class="sourceLineNo">451</span> admin.close();<a name="line.451"></a> +<span class="sourceLineNo">452</span> }<a name="line.452"></a> +<span class="sourceLineNo">453</span> connection.close();<a name="line.453"></a> +<span class="sourceLineNo">454</span> cluster.shutdown();<a name="line.454"></a> +<span class="sourceLineNo">455</span> }<a name="line.455"></a> +<span class="sourceLineNo">456</span>}<a name="line.456"></a>