blob: 4bc48a65dd1b04dae39dc882c92cc3e8ff506730 [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>OperatorStats (Drill : 1.20.3 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="OperatorStats (Drill : 1.20.3 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,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":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/OperatorStats.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/drill/exec/ops/OperatorStatReceiver.html" title="interface in org.apache.drill.exec.ops"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/drill/exec/ops/OperatorUtilities.html" title="class in org.apache.drill.exec.ops"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/drill/exec/ops/OperatorStats.html" target="_top">Frames</a></li>
<li><a href="OperatorStats.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.drill.exec.ops</div>
<h2 title="Class OperatorStats" class="title">Class OperatorStats</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>org.apache.drill.exec.ops.OperatorStats</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="typeNameLabel">OperatorStats</span>
extends <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></pre>
</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>long[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#batchesReceivedByInput">batchesReceivedByInput</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#operatorId">operatorId</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#operatorType">operatorType</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#processingNanos">processingNanos</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#recordsReceivedByInput">recordsReceivedByInput</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#setupNanos">setupNanos</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#waitNanos">waitNanos</a></span></code>&nbsp;</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/drill/exec/ops/OperatorStats.html#OperatorStats-int-java.lang.String-int-org.apache.drill.exec.memory.BufferAllocator-">OperatorStats</a></span>(int&nbsp;operatorId,
<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;operatorType,
int&nbsp;inputCount,
<a href="../../../../../org/apache/drill/exec/memory/BufferAllocator.html" title="interface in org.apache.drill.exec.memory">BufferAllocator</a>&nbsp;allocator)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#OperatorStats-org.apache.drill.exec.ops.OperatorStats-boolean-">OperatorStats</a></span>(<a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html" title="class in org.apache.drill.exec.ops">OperatorStats</a>&nbsp;original,
boolean&nbsp;isClean)</code>
<div class="block">Copy constructor to be able to create a copy of existing stats object shell and use it independently
this is useful if stats have to be updated in different threads, since it is not really
possible to update such stats as waitNanos, setupNanos and processingNanos across threads</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#OperatorStats-org.apache.drill.exec.ops.OpProfileDef-org.apache.drill.exec.memory.BufferAllocator-">OperatorStats</a></span>(<a href="../../../../../org/apache/drill/exec/ops/OpProfileDef.html" title="class in org.apache.drill.exec.ops">OpProfileDef</a>&nbsp;def,
<a href="../../../../../org/apache/drill/exec/memory/BufferAllocator.html" title="interface in org.apache.drill.exec.memory">BufferAllocator</a>&nbsp;allocator)</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="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/drill/exec/ops/OperatorStats.html#addAllMetrics-org.apache.drill.exec.proto.UserBitShared.OperatorProfile.Builder-">addAllMetrics</a></span>(<a href="../../../../../org/apache/drill/exec/proto/UserBitShared.OperatorProfile.Builder.html" title="class in org.apache.drill.exec.proto">UserBitShared.OperatorProfile.Builder</a>&nbsp;builder)</code>&nbsp;</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/drill/exec/ops/OperatorStats.html#addDoubleMetrics-org.apache.drill.exec.proto.UserBitShared.OperatorProfile.Builder-">addDoubleMetrics</a></span>(<a href="../../../../../org/apache/drill/exec/proto/UserBitShared.OperatorProfile.Builder.html" title="class in org.apache.drill.exec.proto">UserBitShared.OperatorProfile.Builder</a>&nbsp;builder)</code>&nbsp;</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/drill/exec/ops/OperatorStats.html#addDoubleStat-org.apache.drill.exec.ops.MetricDef-double-">addDoubleStat</a></span>(<a href="../../../../../org/apache/drill/exec/ops/MetricDef.html" title="interface in org.apache.drill.exec.ops">MetricDef</a>&nbsp;metric,
double&nbsp;value)</code>
<div class="block">Add a double value to the existing value.</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/drill/exec/ops/OperatorStats.html#addLongMetrics-org.apache.drill.exec.proto.UserBitShared.OperatorProfile.Builder-">addLongMetrics</a></span>(<a href="../../../../../org/apache/drill/exec/proto/UserBitShared.OperatorProfile.Builder.html" title="class in org.apache.drill.exec.proto">UserBitShared.OperatorProfile.Builder</a>&nbsp;builder)</code>&nbsp;</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/drill/exec/ops/OperatorStats.html#addLongStat-org.apache.drill.exec.ops.MetricDef-long-">addLongStat</a></span>(<a href="../../../../../org/apache/drill/exec/ops/MetricDef.html" title="interface in org.apache.drill.exec.ops">MetricDef</a>&nbsp;metric,
long&nbsp;value)</code>
<div class="block">Set a stat to the specified long value.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#addStreamProfile-org.apache.drill.exec.proto.UserBitShared.OperatorProfile.Builder-">addStreamProfile</a></span>(<a href="../../../../../org/apache/drill/exec/proto/UserBitShared.OperatorProfile.Builder.html" title="class in org.apache.drill.exec.proto">UserBitShared.OperatorProfile.Builder</a>&nbsp;builder)</code>&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#adjustWaitNanos-long-">adjustWaitNanos</a></span>(long&nbsp;waitNanosOffset)</code>
<div class="block">Adjust waitNanos based on client calculations</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#batchReceived-int-long-boolean-">batchReceived</a></span>(int&nbsp;inputIndex,
long&nbsp;records,
boolean&nbsp;newSchema)</code>&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#clear--">clear</a></span>()</code>
<div class="block">Clear stats</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#getDoubleStat-org.apache.drill.exec.ops.MetricDef-">getDoubleStat</a></span>(<a href="../../../../../org/apache/drill/exec/ops/MetricDef.html" title="interface in org.apache.drill.exec.ops">MetricDef</a>&nbsp;metric)</code>&nbsp;</td>
</tr>
<tr id="i10" 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/drill/exec/ops/OperatorStats.html#getId--">getId</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#getLongStat-org.apache.drill.exec.ops.MetricDef-">getLongStat</a></span>(<a href="../../../../../org/apache/drill/exec/ops/MetricDef.html" title="interface in org.apache.drill.exec.ops">MetricDef</a>&nbsp;metric)</code>&nbsp;</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#getProcessingNanos--">getProcessingNanos</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/apache/drill/exec/proto/UserBitShared.OperatorProfile.html" title="class in org.apache.drill.exec.proto">UserBitShared.OperatorProfile</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#getProfile--">getProfile</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#getWaitNanos--">getWaitNanos</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html" title="class in org.apache.drill.exec.ops">OperatorStats</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#mergeMetrics-org.apache.drill.exec.ops.OperatorStats-">mergeMetrics</a></span>(<a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html" title="class in org.apache.drill.exec.ops">OperatorStats</a>&nbsp;from)</code>
<div class="block">OperatorStats merger - to merge stats from other OperatorStats
this is needed in case some processing is multithreaded that needs to have
separate OperatorStats to deal with
WARN - this will only work for metrics that can be added</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#setDoubleStat-org.apache.drill.exec.ops.MetricDef-double-">setDoubleStat</a></span>(<a href="../../../../../org/apache/drill/exec/ops/MetricDef.html" title="interface in org.apache.drill.exec.ops">MetricDef</a>&nbsp;metric,
double&nbsp;value)</code>
<div class="block">Set a stat to the specified double value.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#setLongStat-org.apache.drill.exec.ops.MetricDef-long-">setLongStat</a></span>(<a href="../../../../../org/apache/drill/exec/ops/MetricDef.html" title="interface in org.apache.drill.exec.ops">MetricDef</a>&nbsp;metric,
long&nbsp;value)</code>
<div class="block">Add a long value to the existing value.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#startProcessing--">startProcessing</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#startSetup--">startSetup</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#startWait--">startWait</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#stopProcessing--">stopProcessing</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#stopSetup--">stopSetup</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html#stopWait--">stopWait</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#toString--" title="class or interface in java.lang">toString</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="operatorId">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>operatorId</h4>
<pre>protected final&nbsp;int operatorId</pre>
</li>
</ul>
<a name="operatorType">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>operatorType</h4>
<pre>protected 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> operatorType</pre>
</li>
</ul>
<a name="recordsReceivedByInput">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>recordsReceivedByInput</h4>
<pre>public&nbsp;long[] recordsReceivedByInput</pre>
</li>
</ul>
<a name="batchesReceivedByInput">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>batchesReceivedByInput</h4>
<pre>public&nbsp;long[] batchesReceivedByInput</pre>
</li>
</ul>
<a name="processingNanos">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>processingNanos</h4>
<pre>protected&nbsp;long processingNanos</pre>
</li>
</ul>
<a name="setupNanos">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setupNanos</h4>
<pre>protected&nbsp;long setupNanos</pre>
</li>
</ul>
<a name="waitNanos">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>waitNanos</h4>
<pre>protected&nbsp;long waitNanos</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="OperatorStats-org.apache.drill.exec.ops.OpProfileDef-org.apache.drill.exec.memory.BufferAllocator-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>OperatorStats</h4>
<pre>public&nbsp;OperatorStats(<a href="../../../../../org/apache/drill/exec/ops/OpProfileDef.html" title="class in org.apache.drill.exec.ops">OpProfileDef</a>&nbsp;def,
<a href="../../../../../org/apache/drill/exec/memory/BufferAllocator.html" title="interface in org.apache.drill.exec.memory">BufferAllocator</a>&nbsp;allocator)</pre>
</li>
</ul>
<a name="OperatorStats-org.apache.drill.exec.ops.OperatorStats-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>OperatorStats</h4>
<pre>public&nbsp;OperatorStats(<a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html" title="class in org.apache.drill.exec.ops">OperatorStats</a>&nbsp;original,
boolean&nbsp;isClean)</pre>
<div class="block">Copy constructor to be able to create a copy of existing stats object shell and use it independently
this is useful if stats have to be updated in different threads, since it is not really
possible to update such stats as waitNanos, setupNanos and processingNanos across threads</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>original</code> - - OperatorStats object to create a copy from</dd>
<dd><code>isClean</code> - - flag to indicate whether to start with clean state indicators or inherit those from original object</dd>
</dl>
</li>
</ul>
<a name="OperatorStats-int-java.lang.String-int-org.apache.drill.exec.memory.BufferAllocator-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>OperatorStats</h4>
<pre>public&nbsp;OperatorStats(int&nbsp;operatorId,
<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;operatorType,
int&nbsp;inputCount,
<a href="../../../../../org/apache/drill/exec/memory/BufferAllocator.html" title="interface in org.apache.drill.exec.memory">BufferAllocator</a>&nbsp;allocator)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="mergeMetrics-org.apache.drill.exec.ops.OperatorStats-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>mergeMetrics</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html" title="class in org.apache.drill.exec.ops">OperatorStats</a>&nbsp;mergeMetrics(<a href="../../../../../org/apache/drill/exec/ops/OperatorStats.html" title="class in org.apache.drill.exec.ops">OperatorStats</a>&nbsp;from)</pre>
<div class="block">OperatorStats merger - to merge stats from other OperatorStats
this is needed in case some processing is multithreaded that needs to have
separate OperatorStats to deal with
WARN - this will only work for metrics that can be added</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>from</code> - - OperatorStats from where to merge to "this"</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>OperatorStats - for convenience so one can merge multiple stats in one go</dd>
</dl>
</li>
</ul>
<a name="clear--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clear</h4>
<pre>public&nbsp;void&nbsp;clear()</pre>
<div class="block">Clear stats</div>
</li>
</ul>
<a name="startSetup--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>startSetup</h4>
<pre>public&nbsp;void&nbsp;startSetup()</pre>
</li>
</ul>
<a name="stopSetup--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stopSetup</h4>
<pre>public&nbsp;void&nbsp;stopSetup()</pre>
</li>
</ul>
<a name="startProcessing--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>startProcessing</h4>
<pre>public&nbsp;void&nbsp;startProcessing()</pre>
</li>
</ul>
<a name="stopProcessing--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stopProcessing</h4>
<pre>public&nbsp;void&nbsp;stopProcessing()</pre>
</li>
</ul>
<a name="startWait--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>startWait</h4>
<pre>public&nbsp;void&nbsp;startWait()</pre>
</li>
</ul>
<a name="stopWait--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stopWait</h4>
<pre>public&nbsp;void&nbsp;stopWait()</pre>
</li>
</ul>
<a name="batchReceived-int-long-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>batchReceived</h4>
<pre>public&nbsp;void&nbsp;batchReceived(int&nbsp;inputIndex,
long&nbsp;records,
boolean&nbsp;newSchema)</pre>
</li>
</ul>
<a name="getId--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getId</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;getId()</pre>
</li>
</ul>
<a name="getProfile--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getProfile</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/drill/exec/proto/UserBitShared.OperatorProfile.html" title="class in org.apache.drill.exec.proto">UserBitShared.OperatorProfile</a>&nbsp;getProfile()</pre>
</li>
</ul>
<a name="addAllMetrics-org.apache.drill.exec.proto.UserBitShared.OperatorProfile.Builder-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addAllMetrics</h4>
<pre>public&nbsp;void&nbsp;addAllMetrics(<a href="../../../../../org/apache/drill/exec/proto/UserBitShared.OperatorProfile.Builder.html" title="class in org.apache.drill.exec.proto">UserBitShared.OperatorProfile.Builder</a>&nbsp;builder)</pre>
</li>
</ul>
<a name="addStreamProfile-org.apache.drill.exec.proto.UserBitShared.OperatorProfile.Builder-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addStreamProfile</h4>
<pre>public&nbsp;void&nbsp;addStreamProfile(<a href="../../../../../org/apache/drill/exec/proto/UserBitShared.OperatorProfile.Builder.html" title="class in org.apache.drill.exec.proto">UserBitShared.OperatorProfile.Builder</a>&nbsp;builder)</pre>
</li>
</ul>
<a name="addLongMetrics-org.apache.drill.exec.proto.UserBitShared.OperatorProfile.Builder-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addLongMetrics</h4>
<pre>public&nbsp;void&nbsp;addLongMetrics(<a href="../../../../../org/apache/drill/exec/proto/UserBitShared.OperatorProfile.Builder.html" title="class in org.apache.drill.exec.proto">UserBitShared.OperatorProfile.Builder</a>&nbsp;builder)</pre>
</li>
</ul>
<a name="addDoubleMetrics-org.apache.drill.exec.proto.UserBitShared.OperatorProfile.Builder-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addDoubleMetrics</h4>
<pre>public&nbsp;void&nbsp;addDoubleMetrics(<a href="../../../../../org/apache/drill/exec/proto/UserBitShared.OperatorProfile.Builder.html" title="class in org.apache.drill.exec.proto">UserBitShared.OperatorProfile.Builder</a>&nbsp;builder)</pre>
</li>
</ul>
<a name="addLongStat-org.apache.drill.exec.ops.MetricDef-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addLongStat</h4>
<pre>public&nbsp;void&nbsp;addLongStat(<a href="../../../../../org/apache/drill/exec/ops/MetricDef.html" title="interface in org.apache.drill.exec.ops">MetricDef</a>&nbsp;metric,
long&nbsp;value)</pre>
<div class="block">Set a stat to the specified long value. Creates the stat
if the stat does not yet exist.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>metric</code> - the metric to update</dd>
<dd><code>value</code> - the value to set</dd>
</dl>
</li>
</ul>
<a name="getLongStat-org.apache.drill.exec.ops.MetricDef-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLongStat</h4>
<pre>public&nbsp;long&nbsp;getLongStat(<a href="../../../../../org/apache/drill/exec/ops/MetricDef.html" title="interface in org.apache.drill.exec.ops">MetricDef</a>&nbsp;metric)</pre>
</li>
</ul>
<a name="addDoubleStat-org.apache.drill.exec.ops.MetricDef-double-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addDoubleStat</h4>
<pre>public&nbsp;void&nbsp;addDoubleStat(<a href="../../../../../org/apache/drill/exec/ops/MetricDef.html" title="interface in org.apache.drill.exec.ops">MetricDef</a>&nbsp;metric,
double&nbsp;value)</pre>
<div class="block">Add a double value to the existing value. Creates the stat
(with an initial value of zero) if the stat does not yet
exist.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>metric</code> - the metric to update</dd>
<dd><code>value</code> - the value to add to the existing value</dd>
</dl>
</li>
</ul>
<a name="getDoubleStat-org.apache.drill.exec.ops.MetricDef-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDoubleStat</h4>
<pre>public&nbsp;double&nbsp;getDoubleStat(<a href="../../../../../org/apache/drill/exec/ops/MetricDef.html" title="interface in org.apache.drill.exec.ops">MetricDef</a>&nbsp;metric)</pre>
</li>
</ul>
<a name="setLongStat-org.apache.drill.exec.ops.MetricDef-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setLongStat</h4>
<pre>public&nbsp;void&nbsp;setLongStat(<a href="../../../../../org/apache/drill/exec/ops/MetricDef.html" title="interface in org.apache.drill.exec.ops">MetricDef</a>&nbsp;metric,
long&nbsp;value)</pre>
<div class="block">Add a long value to the existing value. Creates the stat
(with an initial value of zero) if the stat does not yet
exist.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>metric</code> - the metric to update</dd>
<dd><code>value</code> - the value to add to the existing value</dd>
</dl>
</li>
</ul>
<a name="setDoubleStat-org.apache.drill.exec.ops.MetricDef-double-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDoubleStat</h4>
<pre>public&nbsp;void&nbsp;setDoubleStat(<a href="../../../../../org/apache/drill/exec/ops/MetricDef.html" title="interface in org.apache.drill.exec.ops">MetricDef</a>&nbsp;metric,
double&nbsp;value)</pre>
<div class="block">Set a stat to the specified double value. Creates the stat
if the stat does not yet exist.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>metric</code> - the metric to update</dd>
<dd><code>value</code> - the value to set</dd>
</dl>
</li>
</ul>
<a name="getWaitNanos--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getWaitNanos</h4>
<pre>public&nbsp;long&nbsp;getWaitNanos()</pre>
</li>
</ul>
<a name="adjustWaitNanos-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>adjustWaitNanos</h4>
<pre>public&nbsp;void&nbsp;adjustWaitNanos(long&nbsp;waitNanosOffset)</pre>
<div class="block">Adjust waitNanos based on client calculations</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>waitNanosOffset</code> - - could be negative as well as positive</dd>
</dl>
</li>
</ul>
<a name="getProcessingNanos--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getProcessingNanos</h4>
<pre>public&nbsp;long&nbsp;getProcessingNanos()</pre>
</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/OperatorStats.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/drill/exec/ops/OperatorStatReceiver.html" title="interface in org.apache.drill.exec.ops"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/drill/exec/ops/OperatorUtilities.html" title="class in org.apache.drill.exec.ops"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/drill/exec/ops/OperatorStats.html" target="_top">Frames</a></li>
<li><a href="OperatorStats.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; 1970 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>