blob: 5879853ee77a9a5408ed2c5f649bffa971ef0bf3 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>TakeSnapshotHandler (Apache HBase 3.0.0-alpha-2-SNAPSHOT API)</title>
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="TakeSnapshotHandler (Apache HBase 3.0.0-alpha-2-SNAPSHOT API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":6,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/TakeSnapshotHandler.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/SnapshotManager.html" title="class in org.apache.hadoop.hbase.master.snapshot"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html" target="_top">Frames</a></li>
<li><a href="TakeSnapshotHandler.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.hadoop.hbase.master.snapshot</div>
<h2 title="Class TakeSnapshotHandler" class="title">Class TakeSnapshotHandler</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html" title="class in org.apache.hadoop.hbase.executor">org.apache.hadoop.hbase.executor.EventHandler</a></li>
<li>
<ul class="inheritance">
<li>org.apache.hadoop.hbase.master.snapshot.TakeSnapshotHandler</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html" title="class in org.apache.hadoop.hbase.executor">EventHandler</a>&gt;, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</a>, <a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html" title="interface in org.apache.hadoop.hbase.errorhandling">ForeignExceptionSnare</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html" title="interface in org.apache.hadoop.hbase.master">SnapshotSentinel</a></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/DisabledTableSnapshotHandler.html" title="class in org.apache.hadoop.hbase.master.snapshot">DisabledTableSnapshotHandler</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/EnabledTableSnapshotHandler.html" title="class in org.apache.hadoop.hbase.master.snapshot">EnabledTableSnapshotHandler</a></dd>
</dl>
<hr>
<br>
<pre>@InterfaceAudience.Private
public abstract class <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.71">TakeSnapshotHandler</a>
extends <a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html" title="class in org.apache.hadoop.hbase.executor">EventHandler</a>
implements <a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html" title="interface in org.apache.hadoop.hbase.master">SnapshotSentinel</a>, <a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html" title="interface in org.apache.hadoop.hbase.errorhandling">ForeignExceptionSnare</a></pre>
<div class="block">A handler for taking snapshots from the master.
This is not a subclass of TableEventHandler because using that would incur an extra hbase:meta scan.
The <a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#snapshotRegions-java.util.List-"><code>snapshotRegions(List)</code></a> call should get implemented for each snapshot flavor.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected org.apache.hadoop.conf.Configuration</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#conf">conf</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#finished">finished</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#htd">htd</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static org.slf4j.Logger</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#LOG">LOG</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#master">master</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/master/MetricsSnapshot.html" title="class in org.apache.hadoop.hbase.master">MetricsSnapshot</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#metricsSnapshot">metricsSnapshot</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionDispatcher.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignExceptionDispatcher</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#monitor">monitor</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected org.apache.hadoop.fs.Path</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#rootDir">rootDir</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected org.apache.hadoop.fs.FileSystem</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#rootFs">rootFs</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#snapshot">snapshot</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private org.apache.hadoop.fs.Path</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#snapshotDir">snapshotDir</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/SnapshotManager.html" title="class in org.apache.hadoop.hbase.master.snapshot">SnapshotManager</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#snapshotManager">snapshotManager</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/snapshot/SnapshotManifest.html" title="class in org.apache.hadoop.hbase.snapshot">SnapshotManifest</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#snapshotManifest">snapshotManifest</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#snapshotTable">snapshotTable</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#status">status</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/locking/LockManager.MasterLock.html" title="class in org.apache.hadoop.hbase.master.locking">LockManager.MasterLock</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#tableLock">tableLock</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/MasterSnapshotVerifier.html" title="class in org.apache.hadoop.hbase.master.snapshot">MasterSnapshotVerifier</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#verifier">verifier</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected org.apache.hadoop.fs.Path</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#workingDir">workingDir</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected org.apache.hadoop.fs.FileSystem</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#workingDirFs">workingDirFs</a></span></code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.apache.hadoop.hbase.executor.EventHandler">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.hadoop.hbase.executor.<a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html" title="class in org.apache.hadoop.hbase.executor">EventHandler</a></h3>
<code><a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html#eventType">eventType</a>, <a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html#seqids">seqids</a>, <a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html#server">server</a>, <a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html#waitingTimeForEvents">waitingTimeForEvents</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#TakeSnapshotHandler-org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription-org.apache.hadoop.hbase.master.MasterServices-org.apache.hadoop.hbase.master.snapshot.SnapshotManager-">TakeSnapshotHandler</a></span>(org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription&nbsp;snapshot,
<a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a>&nbsp;masterServices,
<a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/SnapshotManager.html" title="class in org.apache.hadoop.hbase.master.snapshot">SnapshotManager</a>&nbsp;snapshotManager)</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#cancel-java.lang.String-">cancel</a></span>(<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>&nbsp;why)</code>
<div class="block">Actively cancel a running snapshot.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>protected abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#downgradeToSharedTableLock--">downgradeToSharedTableLock</a></span>()</code>
<div class="block">When taking snapshot, first we must acquire the exclusive table lock to confirm that there are
no ongoing merge/split procedures.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#getCompletionTimestamp--">getCompletionTimestamp</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignException</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#getException--">getException</a></span>()</code>
<div class="block">Get the value of the captured exception.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignException</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#getExceptionIfFailed--">getExceptionIfFailed</a></span>()</code>
<div class="block">Get the exception that caused the snapshot to fail, if the snapshot has failed.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#getSnapshot--">getSnapshot</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#hasException--">hasException</a></span>()</code>
<div class="block">Non-exceptional form of <a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html#rethrowException--"><code>ForeignExceptionSnare.rethrowException()</code></a>.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#isFinished--">isFinished</a></span>()</code>
<div class="block">Check to see if the snapshot is finished, where finished may be success or failure.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#loadTableDescriptor--">loadTableDescriptor</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html" title="class in org.apache.hadoop.hbase.master.snapshot">TakeSnapshotHandler</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#prepare--">prepare</a></span>()</code>
<div class="block">Event handlers should do all the necessary checks in this method (rather than
in the constructor, or in process()) so that the caller, which is mostly executed
in the ipc context can fail fast.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#process--">process</a></span>()</code>
<div class="block">Execute the core common portions of taking a snapshot.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#rethrowException--">rethrowException</a></span>()</code>
<div class="block">Rethrow an exception currently held by the <a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html" title="interface in org.apache.hadoop.hbase.errorhandling"><code>ForeignExceptionSnare</code></a>.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#rethrowExceptionIfFailed--">rethrowExceptionIfFailed</a></span>()</code>
<div class="block">Rethrow the exception returned by <a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html#getExceptionIfFailed--"><code>SnapshotSentinel.getExceptionIfFailed()</code></a>.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#snapshotDisabledRegion-org.apache.hadoop.hbase.client.RegionInfo-">snapshotDisabledRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>
<div class="block">Take a snapshot of the specified disabled region</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#snapshotRegions-java.util.List-">snapshotRegions</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;&nbsp;regions)</code>
<div class="block">Snapshot the specified regions</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.hbase.executor.EventHandler">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.hadoop.hbase.executor.<a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html" title="class in org.apache.hadoop.hbase.executor">EventHandler</a></h3>
<code><a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html#compareTo-org.apache.hadoop.hbase.executor.EventHandler-">compareTo</a>, <a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html#getEventType--">getEventType</a>, <a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html#getInformativeName--">getInformativeName</a>, <a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html#getPriority--">getPriority</a>, <a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html#getSeqid--">getSeqid</a>, <a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html#handleException-java.lang.Throwable-">handleException</a>, <a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html#run--">run</a>, <a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html#toString--">toString</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="LOG">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LOG</h4>
<pre>private static final&nbsp;org.slf4j.Logger <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.73">LOG</a></pre>
</li>
</ul>
<a name="finished">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>finished</h4>
<pre>private volatile&nbsp;boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.75">finished</a></pre>
</li>
</ul>
<a name="master">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>master</h4>
<pre>protected final&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.78">master</a></pre>
</li>
</ul>
<a name="metricsSnapshot">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>metricsSnapshot</h4>
<pre>protected final&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsSnapshot.html" title="class in org.apache.hadoop.hbase.master">MetricsSnapshot</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.79">metricsSnapshot</a></pre>
</li>
</ul>
<a name="snapshot">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>snapshot</h4>
<pre>protected final&nbsp;org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.80">snapshot</a></pre>
</li>
</ul>
<a name="conf">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>conf</h4>
<pre>protected final&nbsp;org.apache.hadoop.conf.Configuration <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.81">conf</a></pre>
</li>
</ul>
<a name="rootFs">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rootFs</h4>
<pre>protected final&nbsp;org.apache.hadoop.fs.FileSystem <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.82">rootFs</a></pre>
</li>
</ul>
<a name="workingDirFs">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>workingDirFs</h4>
<pre>protected final&nbsp;org.apache.hadoop.fs.FileSystem <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.83">workingDirFs</a></pre>
</li>
</ul>
<a name="rootDir">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rootDir</h4>
<pre>protected final&nbsp;org.apache.hadoop.fs.Path <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.84">rootDir</a></pre>
</li>
</ul>
<a name="snapshotDir">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>snapshotDir</h4>
<pre>private final&nbsp;org.apache.hadoop.fs.Path <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.85">snapshotDir</a></pre>
</li>
</ul>
<a name="workingDir">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>workingDir</h4>
<pre>protected final&nbsp;org.apache.hadoop.fs.Path <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.86">workingDir</a></pre>
</li>
</ul>
<a name="verifier">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>verifier</h4>
<pre>private final&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/MasterSnapshotVerifier.html" title="class in org.apache.hadoop.hbase.master.snapshot">MasterSnapshotVerifier</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.87">verifier</a></pre>
</li>
</ul>
<a name="monitor">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>monitor</h4>
<pre>protected final&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionDispatcher.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignExceptionDispatcher</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.88">monitor</a></pre>
</li>
</ul>
<a name="tableLock">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>tableLock</h4>
<pre>private final&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/master/locking/LockManager.MasterLock.html" title="class in org.apache.hadoop.hbase.master.locking">LockManager.MasterLock</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.89">tableLock</a></pre>
</li>
</ul>
<a name="status">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>status</h4>
<pre>protected final&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.90">status</a></pre>
</li>
</ul>
<a name="snapshotTable">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>snapshotTable</h4>
<pre>protected final&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.91">snapshotTable</a></pre>
</li>
</ul>
<a name="snapshotManifest">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>snapshotManifest</h4>
<pre>protected final&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/snapshot/SnapshotManifest.html" title="class in org.apache.hadoop.hbase.snapshot">SnapshotManifest</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.92">snapshotManifest</a></pre>
</li>
</ul>
<a name="snapshotManager">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>snapshotManager</h4>
<pre>protected final&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/SnapshotManager.html" title="class in org.apache.hadoop.hbase.master.snapshot">SnapshotManager</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.93">snapshotManager</a></pre>
</li>
</ul>
<a name="htd">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>htd</h4>
<pre>protected&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.95">htd</a></pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="TakeSnapshotHandler-org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription-org.apache.hadoop.hbase.master.MasterServices-org.apache.hadoop.hbase.master.snapshot.SnapshotManager-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>TakeSnapshotHandler</h4>
<pre>public&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.105">TakeSnapshotHandler</a>(org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription&nbsp;snapshot,
<a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a>&nbsp;masterServices,
<a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/SnapshotManager.html" title="class in org.apache.hadoop.hbase.master.snapshot">SnapshotManager</a>&nbsp;snapshotManager)
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>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>snapshot</code> - descriptor of the snapshot to take</dd>
<dd><code>masterServices</code> - master services provider</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the working snapshot directory set from the
configuration is the same as the completed snapshot directory</dd>
<dd><code><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></code> - if the file system of the working snapshot directory cannot be
determined</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="loadTableDescriptor--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>loadTableDescriptor</h4>
<pre>private&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.141">loadTableDescriptor</a>()
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>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><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></code></dd>
</dl>
</li>
</ul>
<a name="prepare--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>prepare</h4>
<pre>public&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html" title="class in org.apache.hadoop.hbase.master.snapshot">TakeSnapshotHandler</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.157">prepare</a>()
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"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html#prepare--">EventHandler</a></code></span></div>
<div class="block">Event handlers should do all the necessary checks in this method (rather than
in the constructor, or in process()) so that the caller, which is mostly executed
in the ipc context can fail fast. Process is executed async from the client ipc,
so this method gives a quick chance to do some basic checks.
Should be called after constructing the EventHandler, and before process().</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html#prepare--">prepare</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html" title="class in org.apache.hadoop.hbase.executor">EventHandler</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the instance of this class</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><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></code> - when something goes wrong</dd>
</dl>
</li>
</ul>
<a name="process--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>process</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.177">process</a>()</pre>
<div class="block">Execute the core common portions of taking a snapshot. The <a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#snapshotRegions-java.util.List-"><code>snapshotRegions(List)</code></a>
call should get implemented for each snapshot flavor.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html#process--">process</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/executor/EventHandler.html" title="class in org.apache.hadoop.hbase.executor">EventHandler</a></code></dd>
</dl>
</li>
</ul>
<a name="downgradeToSharedTableLock--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>downgradeToSharedTableLock</h4>
<pre>protected abstract&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.278">downgradeToSharedTableLock</a>()</pre>
<div class="block">When taking snapshot, first we must acquire the exclusive table lock to confirm that there are
no ongoing merge/split procedures. But later, we should try our best to release the exclusive
lock as this may hurt the availability, because we need to hold the shared lock when assigning
regions.
<p/>
See HBASE-21480 for more details.</div>
</li>
</ul>
<a name="snapshotRegions-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>snapshotRegions</h4>
<pre>protected abstract&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.283">snapshotRegions</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;&nbsp;regions)
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>,
org.apache.zookeeper.KeeperException</pre>
<div class="block">Snapshot the specified regions</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><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></code></dd>
<dd><code>org.apache.zookeeper.KeeperException</code></dd>
</dl>
</li>
</ul>
<a name="snapshotDisabledRegion-org.apache.hadoop.hbase.client.RegionInfo-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>snapshotDisabledRegion</h4>
<pre>protected&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.289">snapshotDisabledRegion</a>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)
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">Take a snapshot of the specified disabled region</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><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></code></dd>
</dl>
</li>
</ul>
<a name="cancel-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cancel</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.298">cancel</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>&nbsp;why)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html#cancel-java.lang.String-">SnapshotSentinel</a></code></span></div>
<div class="block">Actively cancel a running snapshot.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html#cancel-java.lang.String-">cancel</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html" title="interface in org.apache.hadoop.hbase.master">SnapshotSentinel</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>why</code> - Reason for cancellation.</dd>
</dl>
</li>
</ul>
<a name="isFinished--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isFinished</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.309">isFinished</a>()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html#isFinished--">SnapshotSentinel</a></code></span></div>
<div class="block">Check to see if the snapshot is finished, where finished may be success or failure.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html#isFinished--">isFinished</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html" title="interface in org.apache.hadoop.hbase.master">SnapshotSentinel</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><tt>false</tt> if the snapshot is still in progress, <tt>true</tt> if the snapshot has
finished</dd>
</dl>
</li>
</ul>
<a name="getCompletionTimestamp--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCompletionTimestamp</h4>
<pre>public&nbsp;long&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.314">getCompletionTimestamp</a>()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html#getCompletionTimestamp--">getCompletionTimestamp</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html" title="interface in org.apache.hadoop.hbase.master">SnapshotSentinel</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>-1 if the snapshot is in progress, otherwise the completion timestamp.</dd>
</dl>
</li>
</ul>
<a name="getSnapshot--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSnapshot</h4>
<pre>public&nbsp;org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.319">getSnapshot</a>()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html#getSnapshot--">getSnapshot</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html" title="interface in org.apache.hadoop.hbase.master">SnapshotSentinel</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the description of the snapshot being run</dd>
</dl>
</li>
</ul>
<a name="getExceptionIfFailed--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getExceptionIfFailed</h4>
<pre>public&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignException</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.324">getExceptionIfFailed</a>()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html#getExceptionIfFailed--">SnapshotSentinel</a></code></span></div>
<div class="block">Get the exception that caused the snapshot to fail, if the snapshot has failed.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html#getExceptionIfFailed--">getExceptionIfFailed</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html" title="interface in org.apache.hadoop.hbase.master">SnapshotSentinel</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling"><code>ForeignException</code></a> that caused the snapshot to fail, or <tt>null</tt> if the
snapshot is still in progress or has succeeded</dd>
</dl>
</li>
</ul>
<a name="rethrowExceptionIfFailed--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rethrowExceptionIfFailed</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.329">rethrowExceptionIfFailed</a>()
throws <a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html#rethrowExceptionIfFailed--">SnapshotSentinel</a></code></span></div>
<div class="block">Rethrow the exception returned by <a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html#getExceptionIfFailed--"><code>SnapshotSentinel.getExceptionIfFailed()</code></a>.
If there is no exception this is a no-op.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html#rethrowExceptionIfFailed--">rethrowExceptionIfFailed</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/SnapshotSentinel.html" title="interface in org.apache.hadoop.hbase.master">SnapshotSentinel</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignException</a></code> - all exceptions from remote sources are procedure exceptions</dd>
</dl>
</li>
</ul>
<a name="rethrowException--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rethrowException</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.334">rethrowException</a>()
throws <a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html#rethrowException--">ForeignExceptionSnare</a></code></span></div>
<div class="block">Rethrow an exception currently held by the <a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html" title="interface in org.apache.hadoop.hbase.errorhandling"><code>ForeignExceptionSnare</code></a>. If there is
no exception this is a no-op</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html#rethrowException--">rethrowException</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html" title="interface in org.apache.hadoop.hbase.errorhandling">ForeignExceptionSnare</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignException</a></code> - all exceptions from remote sources are procedure exceptions</dd>
</dl>
</li>
</ul>
<a name="hasException--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasException</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.339">hasException</a>()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html#hasException--">ForeignExceptionSnare</a></code></span></div>
<div class="block">Non-exceptional form of <a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html#rethrowException--"><code>ForeignExceptionSnare.rethrowException()</code></a>. Checks to see if any
process to which the exception checkers is bound has created an error that
would cause a failure.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html#hasException--">hasException</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html" title="interface in org.apache.hadoop.hbase.errorhandling">ForeignExceptionSnare</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><tt>true</tt> if there has been an error,<tt>false</tt> otherwise</dd>
</dl>
</li>
</ul>
<a name="getException--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getException</h4>
<pre>public&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignException</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#line.344">getException</a>()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html#getException--">ForeignExceptionSnare</a></code></span></div>
<div class="block">Get the value of the captured exception.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html#getException--">getException</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html" title="interface in org.apache.hadoop.hbase.errorhandling">ForeignExceptionSnare</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the captured foreign exception or null if no exception captured.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/TakeSnapshotHandler.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/SnapshotManager.html" title="class in org.apache.hadoop.hbase.master.snapshot"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html" target="_top">Frames</a></li>
<li><a href="TakeSnapshotHandler.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>