blob: ea0dc85e01f85332d625f3bb48ad6036b77869f1 [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 (1.8.0_292) on Tue Jun 15 06:00:54 GMT 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>BindingPathOutputCommitter (Apache Hadoop Main 3.3.1 API)</title>
<meta name="date" content="2021-06-15">
<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="BindingPathOutputCommitter (Apache Hadoop Main 3.3.1 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"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":10,"i15":10,"i16":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance 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/BindingPathOutputCommitter.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>Prev&nbsp;Class</li>
<li><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/FileOutputCommitter.html" title="class in org.apache.hadoop.mapreduce.lib.output"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html" target="_top">Frames</a></li>
<li><a href="BindingPathOutputCommitter.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.mapreduce.lib.output</div>
<h2 title="Class BindingPathOutputCommitter" class="title">Class BindingPathOutputCommitter</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/mapreduce/OutputCommitter.html" title="class in org.apache.hadoop.mapreduce">org.apache.hadoop.mapreduce.OutputCommitter</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/PathOutputCommitter.html" title="class in org.apache.hadoop.mapreduce.lib.output">org.apache.hadoop.mapreduce.lib.output.PathOutputCommitter</a></li>
<li>
<ul class="inheritance">
<li>org.apache.hadoop.mapreduce.lib.output.BindingPathOutputCommitter</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>@InterfaceAudience.Public
@InterfaceStability.Unstable
public class <span class="typeNameLabel">BindingPathOutputCommitter</span>
extends <a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/PathOutputCommitter.html" title="class in org.apache.hadoop.mapreduce.lib.output">PathOutputCommitter</a></pre>
<div class="block">This is a special committer which creates the factory for the committer and
runs off that. Why does it exist? So that you can explicitly instantiate
a committer by classname and yet still have the actual implementation
driven dynamically by the factory options and destination filesystem.
This simplifies integration
with existing code which takes the classname of a committer.
There's no factory for this, as that would lead to a loop.
All commit protocol methods and accessors are delegated to the
wrapped committer.
How to use:
<ol>
<li>
In applications which take a classname of committer in
a configuration option, set it to the canonical name of this class
(see <a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#NAME"><code>NAME</code></a>). When this class is instantiated, it will
use the factory mechanism to locate the configured committer for the
destination.
</li>
<li>
In code, explicitly create an instance of this committer through
its constructor, then invoke commit lifecycle operations on it.
The dynamically configured committer will be created in the constructor
and have the lifecycle operations relayed to it.
</li>
</ol></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>static <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></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#NAME">NAME</a></span></code>
<div class="block">The classname for use in configurations.</div>
</td>
</tr>
</table>
</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/mapreduce/lib/output/BindingPathOutputCommitter.html#BindingPathOutputCommitter-org.apache.hadoop.fs.Path-org.apache.hadoop.mapreduce.TaskAttemptContext-">BindingPathOutputCommitter</a></span>(<a href="../../../../../../org/apache/hadoop/fs/Path.html" title="class in org.apache.hadoop.fs">Path</a>&nbsp;outputPath,
<a href="../../../../../../org/apache/hadoop/mapreduce/TaskAttemptContext.html" title="interface in org.apache.hadoop.mapreduce">TaskAttemptContext</a>&nbsp;context)</code>
<div class="block">Instantiate.</div>
</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="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/mapreduce/lib/output/BindingPathOutputCommitter.html#abortJob-org.apache.hadoop.mapreduce.JobContext-org.apache.hadoop.mapreduce.JobStatus.State-">abortJob</a></span>(<a href="../../../../../../org/apache/hadoop/mapreduce/JobContext.html" title="interface in org.apache.hadoop.mapreduce">JobContext</a>&nbsp;jobContext,
org.apache.hadoop.mapreduce.JobStatus.State&nbsp;state)</code>
<div class="block">For aborting an unsuccessful job's output.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#abortTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">abortTask</a></span>(<a href="../../../../../../org/apache/hadoop/mapreduce/TaskAttemptContext.html" title="interface in org.apache.hadoop.mapreduce">TaskAttemptContext</a>&nbsp;taskContext)</code>
<div class="block">Discard the task output.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#cleanupJob-org.apache.hadoop.mapreduce.JobContext-">cleanupJob</a></span>(<a href="../../../../../../org/apache/hadoop/mapreduce/JobContext.html" title="interface in org.apache.hadoop.mapreduce">JobContext</a>&nbsp;jobContext)</code>
<div class="block">For cleaning up the job's output after job completion.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#commitJob-org.apache.hadoop.mapreduce.JobContext-">commitJob</a></span>(<a href="../../../../../../org/apache/hadoop/mapreduce/JobContext.html" title="interface in org.apache.hadoop.mapreduce">JobContext</a>&nbsp;jobContext)</code>
<div class="block">For committing job's output after successful job completion.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#commitTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">commitTask</a></span>(<a href="../../../../../../org/apache/hadoop/mapreduce/TaskAttemptContext.html" title="interface in org.apache.hadoop.mapreduce">TaskAttemptContext</a>&nbsp;taskContext)</code>
<div class="block">To promote the task's temporary output to final output location.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/PathOutputCommitter.html" title="class in org.apache.hadoop.mapreduce.lib.output">PathOutputCommitter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#getCommitter--">getCommitter</a></span>()</code>
<div class="block">Get the inner committer.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/fs/Path.html" title="class in org.apache.hadoop.fs">Path</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#getOutputPath--">getOutputPath</a></span>()</code>
<div class="block">Get the final directory where work will be placed once the job
is committed.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/fs/Path.html" title="class in org.apache.hadoop.fs">Path</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#getWorkPath--">getWorkPath</a></span>()</code>
<div class="block">Get the directory that the task should write results into.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#hasOutputPath--">hasOutputPath</a></span>()</code>
<div class="block">Predicate: is there an output path?</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#isCommitJobRepeatable-org.apache.hadoop.mapreduce.JobContext-">isCommitJobRepeatable</a></span>(<a href="../../../../../../org/apache/hadoop/mapreduce/JobContext.html" title="interface in org.apache.hadoop.mapreduce">JobContext</a>&nbsp;jobContext)</code>
<div class="block">Returns true if an in-progress job commit can be retried.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#isRecoverySupported--">isRecoverySupported</a></span>()</code>
<div class="block">Is task output recovery supported for restarting jobs?
If task output recovery is supported, job restart can be done more
efficiently.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#isRecoverySupported-org.apache.hadoop.mapreduce.JobContext-">isRecoverySupported</a></span>(<a href="../../../../../../org/apache/hadoop/mapreduce/JobContext.html" title="interface in org.apache.hadoop.mapreduce">JobContext</a>&nbsp;jobContext)</code>
<div class="block">Is task output recovery supported for restarting jobs?
If task output recovery is supported, job restart can be done more
efficiently.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#needsTaskCommit-org.apache.hadoop.mapreduce.TaskAttemptContext-">needsTaskCommit</a></span>(<a href="../../../../../../org/apache/hadoop/mapreduce/TaskAttemptContext.html" title="interface in org.apache.hadoop.mapreduce">TaskAttemptContext</a>&nbsp;taskContext)</code>
<div class="block">Check whether task needs a commit.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#recoverTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">recoverTask</a></span>(<a href="../../../../../../org/apache/hadoop/mapreduce/TaskAttemptContext.html" title="interface in org.apache.hadoop.mapreduce">TaskAttemptContext</a>&nbsp;taskContext)</code>
<div class="block">Recover the task output.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#setupJob-org.apache.hadoop.mapreduce.JobContext-">setupJob</a></span>(<a href="../../../../../../org/apache/hadoop/mapreduce/JobContext.html" title="interface in org.apache.hadoop.mapreduce">JobContext</a>&nbsp;jobContext)</code>
<div class="block">For the framework to setup the job output during initialization.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#setupTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">setupTask</a></span>(<a href="../../../../../../org/apache/hadoop/mapreduce/TaskAttemptContext.html" title="interface in org.apache.hadoop.mapreduce">TaskAttemptContext</a>&nbsp;taskContext)</code>
<div class="block">Sets up output for the task.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code><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></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html#toString--">toString</a></span>()</code>&nbsp;</td>
</tr>
</table>
<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="NAME">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>NAME</h4>
<pre>public static final&nbsp;<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> NAME</pre>
<div class="block">The classname for use in configurations.</div>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="BindingPathOutputCommitter-org.apache.hadoop.fs.Path-org.apache.hadoop.mapreduce.TaskAttemptContext-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>BindingPathOutputCommitter</h4>
<pre>public&nbsp;BindingPathOutputCommitter(<a href="../../../../../../org/apache/hadoop/fs/Path.html" title="class in org.apache.hadoop.fs">Path</a>&nbsp;outputPath,
<a href="../../../../../../org/apache/hadoop/mapreduce/TaskAttemptContext.html" title="interface in org.apache.hadoop.mapreduce">TaskAttemptContext</a>&nbsp;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>
<div class="block">Instantiate.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>outputPath</code> - output path (may be null)</dd>
<dd><code>context</code> - task context</dd>
<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> - on any failure.</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="getOutputPath--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOutputPath</h4>
<pre>public&nbsp;<a href="../../../../../../org/apache/hadoop/fs/Path.html" title="class in org.apache.hadoop.fs">Path</a>&nbsp;getOutputPath()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/PathOutputCommitter.html#getOutputPath--">PathOutputCommitter</a></code></span></div>
<div class="block">Get the final directory where work will be placed once the job
is committed. This may be null, in which case, there is no output
path to write data to.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/PathOutputCommitter.html#getOutputPath--">getOutputPath</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/PathOutputCommitter.html" title="class in org.apache.hadoop.mapreduce.lib.output">PathOutputCommitter</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the path where final output of the job should be placed.</dd>
</dl>
</li>
</ul>
<a name="getWorkPath--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getWorkPath</h4>
<pre>public&nbsp;<a href="../../../../../../org/apache/hadoop/fs/Path.html" title="class in org.apache.hadoop.fs">Path</a>&nbsp;getWorkPath()
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"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/PathOutputCommitter.html#getWorkPath--">PathOutputCommitter</a></code></span></div>
<div class="block">Get the directory that the task should write results into.
Warning: there's no guarantee that this work path is on the same
FS as the final output, or that it's visible across machines.
May be null.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/PathOutputCommitter.html#getWorkPath--">getWorkPath</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/PathOutputCommitter.html" title="class in org.apache.hadoop.mapreduce.lib.output">PathOutputCommitter</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the work directory</dd>
<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> - IO problem</dd>
</dl>
</li>
</ul>
<a name="setupJob-org.apache.hadoop.mapreduce.JobContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setupJob</h4>
<pre>public&nbsp;void&nbsp;setupJob(<a href="../../../../../../org/apache/hadoop/mapreduce/JobContext.html" title="interface in org.apache.hadoop.mapreduce">JobContext</a>&nbsp;jobContext)
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"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#setupJob-org.apache.hadoop.mapreduce.JobContext-">OutputCommitter</a></code></span></div>
<div class="block">For the framework to setup the job output during initialization. This is
called from the application master process for the entire job. This will be
called multiple times, once per job attempt.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#setupJob-org.apache.hadoop.mapreduce.JobContext-">setupJob</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html" title="class in org.apache.hadoop.mapreduce">OutputCommitter</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>jobContext</code> - Context of the job whose output is being written.</dd>
<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> - if temporary output could not be created</dd>
</dl>
</li>
</ul>
<a name="setupTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setupTask</h4>
<pre>public&nbsp;void&nbsp;setupTask(<a href="../../../../../../org/apache/hadoop/mapreduce/TaskAttemptContext.html" title="interface in org.apache.hadoop.mapreduce">TaskAttemptContext</a>&nbsp;taskContext)
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"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#setupTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">OutputCommitter</a></code></span></div>
<div class="block">Sets up output for the task. This is called from each individual task's
process that will output to HDFS, and it is called just for that task. This
may be called multiple times for the same task, but for different task
attempts.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#setupTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">setupTask</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html" title="class in org.apache.hadoop.mapreduce">OutputCommitter</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>taskContext</code> - Context of the task whose output is being written.</dd>
<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="needsTaskCommit-org.apache.hadoop.mapreduce.TaskAttemptContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>needsTaskCommit</h4>
<pre>public&nbsp;boolean&nbsp;needsTaskCommit(<a href="../../../../../../org/apache/hadoop/mapreduce/TaskAttemptContext.html" title="interface in org.apache.hadoop.mapreduce">TaskAttemptContext</a>&nbsp;taskContext)
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"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#needsTaskCommit-org.apache.hadoop.mapreduce.TaskAttemptContext-">OutputCommitter</a></code></span></div>
<div class="block">Check whether task needs a commit. This is called from each individual
task's process that will output to HDFS, and it is called just for that
task.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#needsTaskCommit-org.apache.hadoop.mapreduce.TaskAttemptContext-">needsTaskCommit</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html" title="class in org.apache.hadoop.mapreduce">OutputCommitter</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true/false</dd>
<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="commitTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>commitTask</h4>
<pre>public&nbsp;void&nbsp;commitTask(<a href="../../../../../../org/apache/hadoop/mapreduce/TaskAttemptContext.html" title="interface in org.apache.hadoop.mapreduce">TaskAttemptContext</a>&nbsp;taskContext)
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"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#commitTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">OutputCommitter</a></code></span></div>
<div class="block">To promote the task's temporary output to final output location.
If <a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#needsTaskCommit-org.apache.hadoop.mapreduce.TaskAttemptContext-"><code>OutputCommitter.needsTaskCommit(TaskAttemptContext)</code></a> returns true and this
task is the task that the AM determines finished first, this method
is called to commit an individual task's output. This is to mark
that tasks output as complete, as <a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#commitJob-org.apache.hadoop.mapreduce.JobContext-"><code>OutputCommitter.commitJob(JobContext)</code></a> will
also be called later on if the entire job finished successfully. This
is called from a task's process. This may be called multiple times for the
same task, but different task attempts. It should be very rare for this to
be called multiple times and requires odd networking failures to make this
happen. In the future the Hadoop framework may eliminate this race.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#commitTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">commitTask</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html" title="class in org.apache.hadoop.mapreduce">OutputCommitter</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>taskContext</code> - Context of the task whose output is being written.</dd>
<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> - if commit is not successful.</dd>
</dl>
</li>
</ul>
<a name="abortTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>abortTask</h4>
<pre>public&nbsp;void&nbsp;abortTask(<a href="../../../../../../org/apache/hadoop/mapreduce/TaskAttemptContext.html" title="interface in org.apache.hadoop.mapreduce">TaskAttemptContext</a>&nbsp;taskContext)
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"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#abortTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">OutputCommitter</a></code></span></div>
<div class="block">Discard the task output. This is called from a task's process to clean
up a single task's output that can not yet been committed. This may be
called multiple times for the same task, but for different task attempts.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#abortTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">abortTask</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html" title="class in org.apache.hadoop.mapreduce">OutputCommitter</a></code></dd>
<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="cleanupJob-org.apache.hadoop.mapreduce.JobContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cleanupJob</h4>
<pre>public&nbsp;void&nbsp;cleanupJob(<a href="../../../../../../org/apache/hadoop/mapreduce/JobContext.html" title="interface in org.apache.hadoop.mapreduce">JobContext</a>&nbsp;jobContext)
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"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#cleanupJob-org.apache.hadoop.mapreduce.JobContext-">OutputCommitter</a></code></span></div>
<div class="block">For cleaning up the job's output after job completion. This is called
from the application master process for the entire job. This may be called
multiple times.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#cleanupJob-org.apache.hadoop.mapreduce.JobContext-">cleanupJob</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html" title="class in org.apache.hadoop.mapreduce">OutputCommitter</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>jobContext</code> - Context of the job whose output is being written.</dd>
<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="commitJob-org.apache.hadoop.mapreduce.JobContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>commitJob</h4>
<pre>public&nbsp;void&nbsp;commitJob(<a href="../../../../../../org/apache/hadoop/mapreduce/JobContext.html" title="interface in org.apache.hadoop.mapreduce">JobContext</a>&nbsp;jobContext)
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"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#commitJob-org.apache.hadoop.mapreduce.JobContext-">OutputCommitter</a></code></span></div>
<div class="block">For committing job's output after successful job completion. Note that this
is invoked for jobs with final runstate as SUCCESSFUL. This is called
from the application master process for the entire job. This is guaranteed
to only be called once. If it throws an exception the entire job will
fail.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#commitJob-org.apache.hadoop.mapreduce.JobContext-">commitJob</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html" title="class in org.apache.hadoop.mapreduce">OutputCommitter</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>jobContext</code> - Context of the job whose output is being written.</dd>
<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="abortJob-org.apache.hadoop.mapreduce.JobContext-org.apache.hadoop.mapreduce.JobStatus.State-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>abortJob</h4>
<pre>public&nbsp;void&nbsp;abortJob(<a href="../../../../../../org/apache/hadoop/mapreduce/JobContext.html" title="interface in org.apache.hadoop.mapreduce">JobContext</a>&nbsp;jobContext,
org.apache.hadoop.mapreduce.JobStatus.State&nbsp;state)
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"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#abortJob-org.apache.hadoop.mapreduce.JobContext-org.apache.hadoop.mapreduce.JobStatus.State-">OutputCommitter</a></code></span></div>
<div class="block">For aborting an unsuccessful job's output. Note that this is invoked for
jobs with final runstate as <code>JobStatus.State.FAILED</code> or
<code>JobStatus.State.KILLED</code>. This is called from the application
master process for the entire job. This may be called multiple times.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#abortJob-org.apache.hadoop.mapreduce.JobContext-org.apache.hadoop.mapreduce.JobStatus.State-">abortJob</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html" title="class in org.apache.hadoop.mapreduce">OutputCommitter</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>jobContext</code> - Context of the job whose output is being written.</dd>
<dd><code>state</code> - final runstate of the job</dd>
<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="isRecoverySupported--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isRecoverySupported</h4>
<pre>public&nbsp;boolean&nbsp;isRecoverySupported()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#isRecoverySupported--">OutputCommitter</a></code></span></div>
<div class="block">Is task output recovery supported for restarting jobs?
If task output recovery is supported, job restart can be done more
efficiently.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#isRecoverySupported--">isRecoverySupported</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html" title="class in org.apache.hadoop.mapreduce">OutputCommitter</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if task output recovery is supported,
<code>false</code> otherwise</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#recoverTask-org.apache.hadoop.mapreduce.TaskAttemptContext-"><code>OutputCommitter.recoverTask(TaskAttemptContext)</code></a></dd>
</dl>
</li>
</ul>
<a name="isCommitJobRepeatable-org.apache.hadoop.mapreduce.JobContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCommitJobRepeatable</h4>
<pre>public&nbsp;boolean&nbsp;isCommitJobRepeatable(<a href="../../../../../../org/apache/hadoop/mapreduce/JobContext.html" title="interface in org.apache.hadoop.mapreduce">JobContext</a>&nbsp;jobContext)
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"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#isCommitJobRepeatable-org.apache.hadoop.mapreduce.JobContext-">OutputCommitter</a></code></span></div>
<div class="block">Returns true if an in-progress job commit can be retried. If the MR AM is
re-run then it will check this value to determine if it can retry an
in-progress commit that was started by a previous version.
Note that in rare scenarios, the previous AM version might still be running
at that time, due to system anomalies. Hence if this method returns true
then the retry commit operation should be able to run concurrently with
the previous operation.
If repeatable job commit is supported, job restart can tolerate previous
AM failures during job commit.
By default, it is not supported. Extended classes (like:
FileOutputCommitter) should explicitly override it if provide support.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#isCommitJobRepeatable-org.apache.hadoop.mapreduce.JobContext-">isCommitJobRepeatable</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html" title="class in org.apache.hadoop.mapreduce">OutputCommitter</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>jobContext</code> - Context of the job whose output is being written.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> repeatable job commit is supported,
<code>false</code> otherwise</dd>
<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="isRecoverySupported-org.apache.hadoop.mapreduce.JobContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isRecoverySupported</h4>
<pre>public&nbsp;boolean&nbsp;isRecoverySupported(<a href="../../../../../../org/apache/hadoop/mapreduce/JobContext.html" title="interface in org.apache.hadoop.mapreduce">JobContext</a>&nbsp;jobContext)
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"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#isRecoverySupported-org.apache.hadoop.mapreduce.JobContext-">OutputCommitter</a></code></span></div>
<div class="block">Is task output recovery supported for restarting jobs?
If task output recovery is supported, job restart can be done more
efficiently.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#isRecoverySupported-org.apache.hadoop.mapreduce.JobContext-">isRecoverySupported</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html" title="class in org.apache.hadoop.mapreduce">OutputCommitter</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>jobContext</code> - Context of the job whose output is being written.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if task output recovery is supported,
<code>false</code> otherwise</dd>
<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>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#recoverTask-org.apache.hadoop.mapreduce.TaskAttemptContext-"><code>OutputCommitter.recoverTask(TaskAttemptContext)</code></a></dd>
</dl>
</li>
</ul>
<a name="recoverTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>recoverTask</h4>
<pre>public&nbsp;void&nbsp;recoverTask(<a href="../../../../../../org/apache/hadoop/mapreduce/TaskAttemptContext.html" title="interface in org.apache.hadoop.mapreduce">TaskAttemptContext</a>&nbsp;taskContext)
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"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#recoverTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">OutputCommitter</a></code></span></div>
<div class="block">Recover the task output.
The retry-count for the job will be passed via the
<code>MRJobConfig.APPLICATION_ATTEMPT_ID</code> key in
<a href="../../../../../../org/apache/hadoop/mapreduce/JobContext.html#getConfiguration--"><code>JobContext.getConfiguration()</code></a> for the
<code>OutputCommitter</code>. This is called from the application master
process, but it is called individually for each task.
If an exception is thrown the task will be attempted again.
This may be called multiple times for the same task. But from different
application attempts.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html#recoverTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">recoverTask</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/OutputCommitter.html" title="class in org.apache.hadoop.mapreduce">OutputCommitter</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>taskContext</code> - Context of the task whose output is being recovered</dd>
<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="hasOutputPath--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasOutputPath</h4>
<pre>public&nbsp;boolean&nbsp;hasOutputPath()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/PathOutputCommitter.html#hasOutputPath--">PathOutputCommitter</a></code></span></div>
<div class="block">Predicate: is there an output path?</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/PathOutputCommitter.html#hasOutputPath--">hasOutputPath</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/PathOutputCommitter.html" title="class in org.apache.hadoop.mapreduce.lib.output">PathOutputCommitter</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if we have an output path set, else false.</dd>
</dl>
</li>
</ul>
<a name="toString--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toString</h4>
<pre>public&nbsp;<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;toString()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/PathOutputCommitter.html#toString--">toString</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/PathOutputCommitter.html" title="class in org.apache.hadoop.mapreduce.lib.output">PathOutputCommitter</a></code></dd>
</dl>
</li>
</ul>
<a name="getCommitter--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getCommitter</h4>
<pre>public&nbsp;<a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/PathOutputCommitter.html" title="class in org.apache.hadoop.mapreduce.lib.output">PathOutputCommitter</a>&nbsp;getCommitter()</pre>
<div class="block">Get the inner committer.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the bonded committer.</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/BindingPathOutputCommitter.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>Prev&nbsp;Class</li>
<li><a href="../../../../../../org/apache/hadoop/mapreduce/lib/output/FileOutputCommitter.html" title="class in org.apache.hadoop.mapreduce.lib.output"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/mapreduce/lib/output/BindingPathOutputCommitter.html" target="_top">Frames</a></li>
<li><a href="BindingPathOutputCommitter.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; 2021 <a href="https://www.apache.org">Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>