blob: d3fc05c0cb9c7057144f9843986cfc145e695cdf [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>KafkaSpoutConfig.ProcessingGuarantee (Storm 2.4.0 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="KafkaSpoutConfig.ProcessingGuarantee (Storm 2.4.0 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":9,"i1":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static 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/KafkaSpoutConfig.ProcessingGuarantee.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/storm/kafka/spout/KafkaSpoutConfig.Builder.html" title="class in org.apache.storm.kafka.spout"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutMessageId.html" title="class in org.apache.storm.kafka.spout"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/storm/kafka/spout/KafkaSpoutConfig.ProcessingGuarantee.html" target="_top">Frames</a></li>
<li><a href="KafkaSpoutConfig.ProcessingGuarantee.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="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&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.storm.kafka.spout</div>
<h2 title="Enum KafkaSpoutConfig.ProcessingGuarantee" class="title">Enum KafkaSpoutConfig.ProcessingGuarantee</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="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">java.lang.Enum</a>&lt;<a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.ProcessingGuarantee.html" title="enum in org.apache.storm.kafka.spout">KafkaSpoutConfig.ProcessingGuarantee</a>&gt;</li>
<li>
<ul class="inheritance">
<li>org.apache.storm.kafka.spout.KafkaSpoutConfig.ProcessingGuarantee</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/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <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/storm/kafka/spout/KafkaSpoutConfig.ProcessingGuarantee.html" title="enum in org.apache.storm.kafka.spout">KafkaSpoutConfig.ProcessingGuarantee</a>&gt;</dd>
</dl>
<dl>
<dt>Enclosing class:</dt>
<dd><a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.html" title="class in org.apache.storm.kafka.spout">KafkaSpoutConfig</a>&lt;<a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.html" title="type parameter in KafkaSpoutConfig">K</a>,<a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.html" title="type parameter in KafkaSpoutConfig">V</a>&gt;</dd>
</dl>
<hr>
<br>
<pre><a href="../../../../../org/apache/storm/annotation/InterfaceStability.Unstable.html" title="annotation in org.apache.storm.annotation">@InterfaceStability.Unstable</a>
public static enum <span class="typeNameLabel">KafkaSpoutConfig.ProcessingGuarantee</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a>&lt;<a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.ProcessingGuarantee.html" title="enum in org.apache.storm.kafka.spout">KafkaSpoutConfig.ProcessingGuarantee</a>&gt;</pre>
<div class="block"><p>This enum controls when the tuple with the <code>ConsumerRecord</code> for an offset is marked as processed, i.e. when the offset can be committed to Kafka. The default value is AT_LEAST_ONCE. The commit interval is controlled by <a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.html#getOffsetsCommitPeriodMs--"><code>KafkaSpoutConfig.getOffsetsCommitPeriodMs()</code></a>, if the mode commits on an interval. NO_GUARANTEE may be removed in a later release without warning, we&rsquo;re still evaluating whether it makes sense to keep.</p></div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== ENUM CONSTANT SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="enum.constant.summary">
<!-- -->
</a>
<h3>Enum Constant Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Enum Constant Summary table, listing enum constants, and an explanation">
<caption><span>Enum Constants</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Enum Constant and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.ProcessingGuarantee.html#AT_LEAST_ONCE">AT_LEAST_ONCE</a></span></code>
<div class="block">An offset is ready to commit only after the corresponding tuple has been processed and acked (at least once).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.ProcessingGuarantee.html#AT_MOST_ONCE">AT_MOST_ONCE</a></span></code>
<div class="block">Every offset will be synchronously committed to Kafka right after being polled but before being emitted to the downstream
components of the topology.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.ProcessingGuarantee.html#NO_GUARANTEE">NO_GUARANTEE</a></span></code>
<div class="block">The polled offsets are ready to commit immediately after being polled.</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="t1" class="tableTab"><span><a href="javascript:show(1);">Static 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>static <a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.ProcessingGuarantee.html" title="enum in org.apache.storm.kafka.spout">KafkaSpoutConfig.ProcessingGuarantee</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.ProcessingGuarantee.html#valueOf-java.lang.String-">valueOf</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;name)</code>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.ProcessingGuarantee.html" title="enum in org.apache.storm.kafka.spout">KafkaSpoutConfig.ProcessingGuarantee</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.ProcessingGuarantee.html#values--">values</a></span>()</code>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Enum">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.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/Enum.html?is-external=true#compareTo-E-" title="class or interface in java.lang">compareTo</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.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/Enum.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/Enum.html?is-external=true#getDeclaringClass--" title="class or interface in java.lang">getDeclaringClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.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/Enum.html?is-external=true#name--" title="class or interface in java.lang">name</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true#ordinal--" title="class or interface in java.lang">ordinal</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true#valueOf-java.lang.Class-java.lang.String-" title="class or interface in java.lang">valueOf</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#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#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">
<!-- ============ ENUM CONSTANT DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="enum.constant.detail">
<!-- -->
</a>
<h3>Enum Constant Detail</h3>
<a name="AT_LEAST_ONCE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AT_LEAST_ONCE</h4>
<pre>public static final&nbsp;<a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.ProcessingGuarantee.html" title="enum in org.apache.storm.kafka.spout">KafkaSpoutConfig.ProcessingGuarantee</a> AT_LEAST_ONCE</pre>
<div class="block">An offset is ready to commit only after the corresponding tuple has been processed and acked (at least once). If a tuple fails or
times out it will be re-emitted, as controlled by the <a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutRetryService.html" title="interface in org.apache.storm.kafka.spout"><code>KafkaSpoutRetryService</code></a>. Commits synchronously on the defined
interval.</div>
</li>
</ul>
<a name="AT_MOST_ONCE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AT_MOST_ONCE</h4>
<pre>public static final&nbsp;<a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.ProcessingGuarantee.html" title="enum in org.apache.storm.kafka.spout">KafkaSpoutConfig.ProcessingGuarantee</a> AT_MOST_ONCE</pre>
<div class="block">Every offset will be synchronously committed to Kafka right after being polled but before being emitted to the downstream
components of the topology. The commit interval is ignored. This mode guarantees that the offset is processed at most once by
ensuring the spout won't retry tuples that fail or time out after the commit to Kafka has been done</div>
</li>
</ul>
<a name="NO_GUARANTEE">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>NO_GUARANTEE</h4>
<pre>public static final&nbsp;<a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.ProcessingGuarantee.html" title="enum in org.apache.storm.kafka.spout">KafkaSpoutConfig.ProcessingGuarantee</a> NO_GUARANTEE</pre>
<div class="block">The polled offsets are ready to commit immediately after being polled. The offsets are committed periodically, i.e. a message may
be processed 0, 1 or more times. This behavior is similar to setting enable.auto.commit=true in the consumer, but allows the
spout to control when commits occur. Commits asynchronously on the defined interval.</div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="values--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>values</h4>
<pre>public static&nbsp;<a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.ProcessingGuarantee.html" title="enum in org.apache.storm.kafka.spout">KafkaSpoutConfig.ProcessingGuarantee</a>[]&nbsp;values()</pre>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared. This method may be used to iterate
over the constants as follows:
<pre>
for (KafkaSpoutConfig.ProcessingGuarantee c : KafkaSpoutConfig.ProcessingGuarantee.values())
&nbsp; System.out.println(c);
</pre></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an array containing the constants of this enum type, in the order they are declared</dd>
</dl>
</li>
</ul>
<a name="valueOf-java.lang.String-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>valueOf</h4>
<pre>public static&nbsp;<a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.ProcessingGuarantee.html" title="enum in org.apache.storm.kafka.spout">KafkaSpoutConfig.ProcessingGuarantee</a>&nbsp;valueOf(<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;name)</pre>
<div class="block">Returns the enum constant of this type with the specified name.
The string must match <i>exactly</i> an identifier used to declare an
enum constant in this type. (Extraneous whitespace characters are
not permitted.)</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the enum constant to be returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the enum constant with the specified name</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 this enum type has no constant with the specified name</dd>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if the argument is null</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/KafkaSpoutConfig.ProcessingGuarantee.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 class="aboutLanguage"><script type="text/javascript" src="../../../../../highlight.pack.js"></script>
<script type="text/javascript"><!--
hljs.initHighlightingOnLoad();
//--></script></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutConfig.Builder.html" title="class in org.apache.storm.kafka.spout"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/storm/kafka/spout/KafkaSpoutMessageId.html" title="class in org.apache.storm.kafka.spout"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/storm/kafka/spout/KafkaSpoutConfig.ProcessingGuarantee.html" target="_top">Frames</a></li>
<li><a href="KafkaSpoutConfig.ProcessingGuarantee.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="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&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; 2022 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>