blob: 1a6df1acf89b106ed26d711ca7ace4f6ef594b68 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.6"/>
<title>Impala: impala::SortNode Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
$(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">Impala
</div>
<div id="projectbrief">Impalaistheopensource,nativeanalyticdatabaseforApacheHadoop.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classimpala_1_1SortNode.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pub-static-attribs">Static Public Attributes</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-static-methods">Static Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="#pri-methods">Private Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="classimpala_1_1SortNode-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">impala::SortNode Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p><code>#include &lt;<a class="el" href="sort-node_8h_source.html">sort-node.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for impala::SortNode:</div>
<div class="dyncontent">
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="classimpala_1_1SortNode__inherit__graph.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
</div>
<div class="dynheader">
Collaboration diagram for impala::SortNode:</div>
<div class="dyncontent">
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="classimpala_1_1SortNode__coll__graph.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:aab7f5d23ead190748b1558f60df96715"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1SortNode.html#aab7f5d23ead190748b1558f60df96715">SortNode</a> (<a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> *<a class="el" href="expr-benchmark_8cc.html#a3a5de7bd423fbc0afc4cf935c166ca6b">pool</a>, const TPlanNode &amp;tnode, const <a class="el" href="classimpala_1_1DescriptorTbl.html">DescriptorTbl</a> &amp;descs)</td></tr>
<tr class="separator:aab7f5d23ead190748b1558f60df96715"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa52f1cee259ff1a7a1fc73558aa0c3a9"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1SortNode.html#aa52f1cee259ff1a7a1fc73558aa0c3a9">~SortNode</a> ()</td></tr>
<tr class="separator:aa52f1cee259ff1a7a1fc73558aa0c3a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58a1e577d39846c7e6e8373bc9f413a8"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classimpala_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1SortNode.html#a58a1e577d39846c7e6e8373bc9f413a8">Init</a> (const TPlanNode &amp;tnode)</td></tr>
<tr class="separator:a58a1e577d39846c7e6e8373bc9f413a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb55f2bdc41e080a14e5009b3338aed2"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classimpala_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1SortNode.html#abb55f2bdc41e080a14e5009b3338aed2">Prepare</a> (<a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state)</td></tr>
<tr class="separator:abb55f2bdc41e080a14e5009b3338aed2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6a4e400f5216c5db623dbbaf6e321ed2"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classimpala_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1SortNode.html#a6a4e400f5216c5db623dbbaf6e321ed2">Open</a> (<a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state)</td></tr>
<tr class="separator:a6a4e400f5216c5db623dbbaf6e321ed2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a069f75cb466ea82d7b475163707e7f65"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classimpala_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1SortNode.html#a069f75cb466ea82d7b475163707e7f65">GetNext</a> (<a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state, <a class="el" href="classimpala_1_1RowBatch.html">RowBatch</a> *row_batch, <a class="el" href="classbool.html">bool</a> *eos)</td></tr>
<tr class="separator:a069f75cb466ea82d7b475163707e7f65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ffed0c122ce0f4102da572308365f80"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classimpala_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1SortNode.html#a0ffed0c122ce0f4102da572308365f80">Reset</a> (<a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state)</td></tr>
<tr class="separator:a0ffed0c122ce0f4102da572308365f80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a016c8ab0bfef3279c80eada73a190e66"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1SortNode.html#a016c8ab0bfef3279c80eada73a190e66">Close</a> (<a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state)</td></tr>
<tr class="separator:a016c8ab0bfef3279c80eada73a190e66"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79a78df488ddcb12e0150b919efc059a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a79a78df488ddcb12e0150b919efc059a">CollectNodes</a> (TPlanNodeType::type node_type, std::vector&lt; <a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a> * &gt; *nodes)</td></tr>
<tr class="separator:a79a78df488ddcb12e0150b919efc059a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeaf6b6a9dff1fd661e63258272c62b96"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#aeaf6b6a9dff1fd661e63258272c62b96">CollectScanNodes</a> (std::vector&lt; <a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a> * &gt; *nodes)</td></tr>
<tr class="memdesc:aeaf6b6a9dff1fd661e63258272c62b96"><td class="mdescLeft">&#160;</td><td class="mdescRight">Collect all scan node types. <a href="#aeaf6b6a9dff1fd661e63258272c62b96">More...</a><br/></td></tr>
<tr class="separator:aeaf6b6a9dff1fd661e63258272c62b96"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56de50f3c92483ba38f6e42ab19cc0a2"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a56de50f3c92483ba38f6e42ab19cc0a2">DebugString</a> () const </td></tr>
<tr class="memdesc:a56de50f3c92483ba38f6e42ab19cc0a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a string representation in DFS order of the plan rooted at this. <a href="#a56de50f3c92483ba38f6e42ab19cc0a2">More...</a><br/></td></tr>
<tr class="separator:a56de50f3c92483ba38f6e42ab19cc0a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad21c25a63f7a11127082710941d23654"><td class="memItemLeft" align="right" valign="top">const std::vector&lt; <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#ad21c25a63f7a11127082710941d23654">conjunct_ctxs</a> () const </td></tr>
<tr class="separator:ad21c25a63f7a11127082710941d23654"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2088a36bc4bb4e0c3c7c1444198b76dd"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a2088a36bc4bb4e0c3c7c1444198b76dd">id</a> () const </td></tr>
<tr class="separator:a2088a36bc4bb4e0c3c7c1444198b76dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef75c686c9c11e8fcb9b21cfa74c442d"><td class="memItemLeft" align="right" valign="top">TPlanNodeType::type&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#aef75c686c9c11e8fcb9b21cfa74c442d">type</a> () const </td></tr>
<tr class="separator:aef75c686c9c11e8fcb9b21cfa74c442d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a467297b1704ae33db61ae61d3400c35f"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classimpala_1_1RowDescriptor.html">RowDescriptor</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a467297b1704ae33db61ae61d3400c35f">row_desc</a> () const </td></tr>
<tr class="separator:a467297b1704ae33db61ae61d3400c35f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f3a896c7e58304582acd34f662b4c72"><td class="memItemLeft" align="right" valign="top">int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a3f3a896c7e58304582acd34f662b4c72">rows_returned</a> () const </td></tr>
<tr class="separator:a3f3a896c7e58304582acd34f662b4c72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8083cea2b4b6646c80d8d87a0522074b"><td class="memItemLeft" align="right" valign="top">int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a8083cea2b4b6646c80d8d87a0522074b">limit</a> () const </td></tr>
<tr class="separator:a8083cea2b4b6646c80d8d87a0522074b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ff26374466bc587eaa4c7d00b3e126a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbool.html">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a3ff26374466bc587eaa4c7d00b3e126a">ReachedLimit</a> ()</td></tr>
<tr class="separator:a3ff26374466bc587eaa4c7d00b3e126a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad062f28c78add1a869fffdab9419b09d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1RuntimeProfile.html">RuntimeProfile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#ad062f28c78add1a869fffdab9419b09d">runtime_profile</a> ()</td></tr>
<tr class="separator:ad062f28c78add1a869fffdab9419b09d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd7922a579e4adc353756849a0f45b48"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1MemTracker.html">MemTracker</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#abd7922a579e4adc353756849a0f45b48">mem_tracker</a> ()</td></tr>
<tr class="separator:abd7922a579e4adc353756849a0f45b48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe940aa2d7da783c4e8c65f0af22ad8f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1MemTracker.html">MemTracker</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#abe940aa2d7da783c4e8c65f0af22ad8f">expr_mem_tracker</a> ()</td></tr>
<tr class="separator:abe940aa2d7da783c4e8c65f0af22ad8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:aad99835d1957684b656d5f2d4427b5eb"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classimpala_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#aad99835d1957684b656d5f2d4427b5eb">CreateTree</a> (<a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> *<a class="el" href="expr-benchmark_8cc.html#a3a5de7bd423fbc0afc4cf935c166ca6b">pool</a>, const TPlan &amp;plan, const <a class="el" href="classimpala_1_1DescriptorTbl.html">DescriptorTbl</a> &amp;descs, <a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a> **root)</td></tr>
<tr class="separator:aad99835d1957684b656d5f2d4427b5eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39054faeb49a0adeeabb256106f456af"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a39054faeb49a0adeeabb256106f456af">SetDebugOptions</a> (int node_id, TExecNodePhase::type phase, TDebugAction::type action, <a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a> *tree)</td></tr>
<tr class="memdesc:a39054faeb49a0adeeabb256106f456af"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set debug action for node with given id in 'tree'. <a href="#a39054faeb49a0adeeabb256106f456af">More...</a><br/></td></tr>
<tr class="separator:a39054faeb49a0adeeabb256106f456af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48ec693b9eb748682b58479751812f08"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classbool.html">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a48ec693b9eb748682b58479751812f08">EvalConjuncts</a> (<a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *const *ctxs, int num_ctxs, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *row)</td></tr>
<tr class="separator:a48ec693b9eb748682b58479751812f08"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64bf8cb31a57b9d6dc3f5cd60066a686"><td class="memItemLeft" align="right" valign="top">static llvm::Function *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a64bf8cb31a57b9d6dc3f5cd60066a686">CodegenEvalConjuncts</a> (<a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state, const std::vector&lt; <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * &gt; &amp;<a class="el" href="classimpala_1_1ExecNode.html#ad21c25a63f7a11127082710941d23654">conjunct_ctxs</a>, const char *<a class="el" href="namespaceimpala.html#aaebb9aadfa9e5aec064bc26565df06d3">name</a>=&quot;EvalConjuncts&quot;)</td></tr>
<tr class="separator:a64bf8cb31a57b9d6dc3f5cd60066a686"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e2d144b60f904f6b1f3219b9471aad3"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a3e2d144b60f904f6b1f3219b9471aad3">GetNodeIdFromProfile</a> (<a class="el" href="classimpala_1_1RuntimeProfile.html">RuntimeProfile</a> *p)</td></tr>
<tr class="memdesc:a3e2d144b60f904f6b1f3219b9471aad3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extract node id from p-&gt;<a class="el" href="namespaceimpala.html#aaebb9aadfa9e5aec064bc26565df06d3">name()</a>. <a href="#a3e2d144b60f904f6b1f3219b9471aad3">More...</a><br/></td></tr>
<tr class="separator:a3e2d144b60f904f6b1f3219b9471aad3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr class="memitem:a514778516fb852eed80c2e98bf08fac2"><td class="memItemLeft" align="right" valign="top">static const std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a514778516fb852eed80c2e98bf08fac2">ROW_THROUGHPUT_COUNTER</a> = &quot;RowsReturnedRate&quot;</td></tr>
<tr class="memdesc:a514778516fb852eed80c2e98bf08fac2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Names of counters shared by all exec nodes. <a href="#a514778516fb852eed80c2e98bf08fac2">More...</a><br/></td></tr>
<tr class="separator:a514778516fb852eed80c2e98bf08fac2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a6c59554968160305a44e0efb1ba74d22"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1SortNode.html#a6c59554968160305a44e0efb1ba74d22">DebugString</a> (int indentation_level, std::stringstream *out) const </td></tr>
<tr class="separator:a6c59554968160305a44e0efb1ba74d22"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fb77c5926ec8ad015f153aabb190237"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a1fb77c5926ec8ad015f153aabb190237">child</a> (int i)</td></tr>
<tr class="separator:a1fb77c5926ec8ad015f153aabb190237"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a467751b7182365c83e867dc3d50b43e2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbool.html">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a467751b7182365c83e867dc3d50b43e2">is_closed</a> ()</td></tr>
<tr class="separator:a467751b7182365c83e867dc3d50b43e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4941adc86040c00d0fe1b52bb1c0221"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classbool.html">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#aa4941adc86040c00d0fe1b52bb1c0221">IsScanNode</a> () const </td></tr>
<tr class="separator:aa4941adc86040c00d0fe1b52bb1c0221"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf07b8ec102e4bc7cc3707157c8f0e99"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#adf07b8ec102e4bc7cc3707157c8f0e99">InitRuntimeProfile</a> (const std::string &amp;<a class="el" href="namespaceimpala.html#aaebb9aadfa9e5aec064bc26565df06d3">name</a>)</td></tr>
<tr class="separator:adf07b8ec102e4bc7cc3707157c8f0e99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a310d3a6b28f5bb1046a90ef8995ffb12"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a310d3a6b28f5bb1046a90ef8995ffb12">ExecDebugAction</a> (TExecNodePhase::type phase, <a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state)</td></tr>
<tr class="separator:a310d3a6b28f5bb1046a90ef8995ffb12"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a05e056b5d11b187a1d31723c7d1592eb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a05e056b5d11b187a1d31723c7d1592eb">AddRuntimeExecOption</a> (const std::string &amp;option)</td></tr>
<tr class="memdesc:a05e056b5d11b187a1d31723c7d1592eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Appends option to 'runtime_exec_options_'. <a href="#a05e056b5d11b187a1d31723c7d1592eb">More...</a><br/></td></tr>
<tr class="separator:a05e056b5d11b187a1d31723c7d1592eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab8f2832c6a5487aa8168b2a7d65773ee"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classimpala_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#ab8f2832c6a5487aa8168b2a7d65773ee">QueryMaintenance</a> (<a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state)</td></tr>
<tr class="separator:ab8f2832c6a5487aa8168b2a7d65773ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ad378d275c91637f12ca7fa742d59db"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a4ad378d275c91637f12ca7fa742d59db">AddExprCtxToFree</a> (<a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *ctx)</td></tr>
<tr class="separator:a4ad378d275c91637f12ca7fa742d59db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19340582202dd61e0b028c28efa5490a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a19340582202dd61e0b028c28efa5490a">AddExprCtxsToFree</a> (const std::vector&lt; <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * &gt; &amp;ctxs)</td></tr>
<tr class="separator:a19340582202dd61e0b028c28efa5490a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa7de6fd3a4f1580884680c35b9b8804"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#afa7de6fd3a4f1580884680c35b9b8804">AddExprCtxsToFree</a> (const <a class="el" href="classimpala_1_1SortExecExprs.html">SortExecExprs</a> &amp;sort_exec_exprs)</td></tr>
<tr class="separator:afa7de6fd3a4f1580884680c35b9b8804"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-static-methods"></a>
Static Protected Member Functions</h2></td></tr>
<tr class="memitem:af055b7d9d3de849cbde01b12c608ee38"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classimpala_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#af055b7d9d3de849cbde01b12c608ee38">CreateNode</a> (<a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> *<a class="el" href="expr-benchmark_8cc.html#a3a5de7bd423fbc0afc4cf935c166ca6b">pool</a>, const TPlanNode &amp;tnode, const <a class="el" href="classimpala_1_1DescriptorTbl.html">DescriptorTbl</a> &amp;descs, <a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a> **node)</td></tr>
<tr class="memdesc:af055b7d9d3de849cbde01b12c608ee38"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a single exec node derived from thrift node; place exec node in 'pool'. <a href="#af055b7d9d3de849cbde01b12c608ee38">More...</a><br/></td></tr>
<tr class="separator:af055b7d9d3de849cbde01b12c608ee38"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d97c1b8247ed300dd82db66f38e7b00"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classimpala_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a3d97c1b8247ed300dd82db66f38e7b00">CreateTreeHelper</a> (<a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> *<a class="el" href="expr-benchmark_8cc.html#a3a5de7bd423fbc0afc4cf935c166ca6b">pool</a>, const std::vector&lt; TPlanNode &gt; &amp;tnodes, const <a class="el" href="classimpala_1_1DescriptorTbl.html">DescriptorTbl</a> &amp;descs, <a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a> *parent, int *node_idx, <a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a> **root)</td></tr>
<tr class="separator:a3d97c1b8247ed300dd82db66f38e7b00"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:a2d543ec055a04199286b52d23a82280f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a2d543ec055a04199286b52d23a82280f">id_</a></td></tr>
<tr class="separator:a2d543ec055a04199286b52d23a82280f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab86051ba57221a009063eda6e2aefd76"><td class="memItemLeft" align="right" valign="top">TPlanNodeType::type&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#ab86051ba57221a009063eda6e2aefd76">type_</a></td></tr>
<tr class="separator:ab86051ba57221a009063eda6e2aefd76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac55aaa21c7750fd5f8774aee1ac5211a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#ac55aaa21c7750fd5f8774aee1ac5211a">pool_</a></td></tr>
<tr class="separator:ac55aaa21c7750fd5f8774aee1ac5211a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a302f24417303ae6eb522e50a15f9ca2c"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a302f24417303ae6eb522e50a15f9ca2c">conjunct_ctxs_</a></td></tr>
<tr class="separator:a302f24417303ae6eb522e50a15f9ca2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5b4aff8e7b124468f2b61ca63b87ab5"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#ab5b4aff8e7b124468f2b61ca63b87ab5">children_</a></td></tr>
<tr class="separator:ab5b4aff8e7b124468f2b61ca63b87ab5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a900a9e0a75e9839f9c6d4658518944b8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1RowDescriptor.html">RowDescriptor</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a900a9e0a75e9839f9c6d4658518944b8">row_descriptor_</a></td></tr>
<tr class="separator:a900a9e0a75e9839f9c6d4658518944b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76c55d45e1b55f82b83614898240adaf"><td class="memItemLeft" align="right" valign="top">TExecNodePhase::type&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a76c55d45e1b55f82b83614898240adaf">debug_phase_</a></td></tr>
<tr class="separator:a76c55d45e1b55f82b83614898240adaf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08cd2dfda956999b3995caafe76190fd"><td class="memItemLeft" align="right" valign="top">TDebugAction::type&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a08cd2dfda956999b3995caafe76190fd">debug_action_</a></td></tr>
<tr class="separator:a08cd2dfda956999b3995caafe76190fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae41f912c39b004f60987b4d480e442b8"><td class="memItemLeft" align="right" valign="top">int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#ae41f912c39b004f60987b4d480e442b8">limit_</a></td></tr>
<tr class="separator:ae41f912c39b004f60987b4d480e442b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9789aeca3e98cda63998a8f47d355fd9"><td class="memItemLeft" align="right" valign="top">int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a9789aeca3e98cda63998a8f47d355fd9">num_rows_returned_</a></td></tr>
<tr class="separator:a9789aeca3e98cda63998a8f47d355fd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9cab4e45a94527ff97333c0f280036f8"><td class="memItemLeft" align="right" valign="top">boost::scoped_ptr&lt; <a class="el" href="classimpala_1_1RuntimeProfile.html">RuntimeProfile</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a9cab4e45a94527ff97333c0f280036f8">runtime_profile_</a></td></tr>
<tr class="separator:a9cab4e45a94527ff97333c0f280036f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a632a4cdd4c654f362f630936c5ecb29a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1RuntimeProfile_1_1Counter.html">RuntimeProfile::Counter</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a632a4cdd4c654f362f630936c5ecb29a">rows_returned_counter_</a></td></tr>
<tr class="separator:a632a4cdd4c654f362f630936c5ecb29a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fda03b2e215e5fac1352403ae737030"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1RuntimeProfile_1_1Counter.html">RuntimeProfile::Counter</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a1fda03b2e215e5fac1352403ae737030">rows_returned_rate_</a></td></tr>
<tr class="separator:a1fda03b2e215e5fac1352403ae737030"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba2362d7d1816b4f90f3e1f6768accd1"><td class="memItemLeft" align="right" valign="top">boost::scoped_ptr&lt; <a class="el" href="classimpala_1_1MemTracker.html">MemTracker</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#aba2362d7d1816b4f90f3e1f6768accd1">mem_tracker_</a></td></tr>
<tr class="memdesc:aba2362d7d1816b4f90f3e1f6768accd1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Account for peak memory used by this node. <a href="#aba2362d7d1816b4f90f3e1f6768accd1">More...</a><br/></td></tr>
<tr class="separator:aba2362d7d1816b4f90f3e1f6768accd1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8574c9973af1609b90cef86ccc331141"><td class="memItemLeft" align="right" valign="top">boost::scoped_ptr&lt; <a class="el" href="classimpala_1_1MemTracker.html">MemTracker</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a8574c9973af1609b90cef86ccc331141">expr_mem_tracker_</a></td></tr>
<tr class="memdesc:a8574c9973af1609b90cef86ccc331141"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classimpala_1_1MemTracker.html" title="This class is thread-safe. ">MemTracker</a> that should be used for ExprContexts. <a href="#a8574c9973af1609b90cef86ccc331141">More...</a><br/></td></tr>
<tr class="separator:a8574c9973af1609b90cef86ccc331141"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa536e5c953d915df988c5bcbf24db9f4"><td class="memItemLeft" align="right" valign="top">boost::mutex&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#aa536e5c953d915df988c5bcbf24db9f4">exec_options_lock_</a></td></tr>
<tr class="separator:aa536e5c953d915df988c5bcbf24db9f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e72d8a73cfdc5ab09f6bafcca6f8411"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1ExecNode.html#a6e72d8a73cfdc5ab09f6bafcca6f8411">runtime_exec_options_</a></td></tr>
<tr class="separator:a6e72d8a73cfdc5ab09f6bafcca6f8411"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
Private Member Functions</h2></td></tr>
<tr class="memitem:a4c8c795045b03e53be9127f69954cd32"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1SortNode.html#a4c8c795045b03e53be9127f69954cd32">SortInput</a> (<a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state)</td></tr>
<tr class="memdesc:a4c8c795045b03e53be9127f69954cd32"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fetch input rows and feed them to the sorter until the input is exhausted. <a href="#a4c8c795045b03e53be9127f69954cd32">More...</a><br/></td></tr>
<tr class="separator:a4c8c795045b03e53be9127f69954cd32"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2036b7d443ce25c963cf138caca7a948"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1SortNode.html#a2036b7d443ce25c963cf138caca7a948">CreateBlockMgr</a> (<a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state)</td></tr>
<tr class="separator:a2036b7d443ce25c963cf138caca7a948"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:a1f1cc35f7b9826515e037cc2be747ae8"><td class="memItemLeft" align="right" valign="top">int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1SortNode.html#a1f1cc35f7b9826515e037cc2be747ae8">offset_</a></td></tr>
<tr class="memdesc:a1f1cc35f7b9826515e037cc2be747ae8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of rows to skip. <a href="#a1f1cc35f7b9826515e037cc2be747ae8">More...</a><br/></td></tr>
<tr class="separator:a1f1cc35f7b9826515e037cc2be747ae8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9bc51307fd35cc0f3801697793bd9e3a"><td class="memItemLeft" align="right" valign="top">int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1SortNode.html#a9bc51307fd35cc0f3801697793bd9e3a">num_rows_skipped_</a></td></tr>
<tr class="separator:a9bc51307fd35cc0f3801697793bd9e3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b949419606f213525ed1b77501ed42e"><td class="memItemLeft" align="right" valign="top">boost::scoped_ptr&lt; <a class="el" href="classimpala_1_1Sorter.html">Sorter</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1SortNode.html#a2b949419606f213525ed1b77501ed42e">sorter_</a></td></tr>
<tr class="memdesc:a2b949419606f213525ed1b77501ed42e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Object used for external sorting. <a href="#a2b949419606f213525ed1b77501ed42e">More...</a><br/></td></tr>
<tr class="separator:a2b949419606f213525ed1b77501ed42e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3459326503d235d84908ed7b70461cb1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1SortExecExprs.html">SortExecExprs</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1SortNode.html#a3459326503d235d84908ed7b70461cb1">sort_exec_exprs_</a></td></tr>
<tr class="memdesc:a3459326503d235d84908ed7b70461cb1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expressions and parameters used for tuple materialization and tuple comparison. <a href="#a3459326503d235d84908ed7b70461cb1">More...</a><br/></td></tr>
<tr class="separator:a3459326503d235d84908ed7b70461cb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acdf6ffbf3d2a4da46a9fa442267e9177"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classbool.html">bool</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1SortNode.html#acdf6ffbf3d2a4da46a9fa442267e9177">is_asc_order_</a></td></tr>
<tr class="separator:acdf6ffbf3d2a4da46a9fa442267e9177"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a675c233454a6c3e6bcfb38206e89dc48"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classbool.html">bool</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1SortNode.html#a675c233454a6c3e6bcfb38206e89dc48">nulls_first_</a></td></tr>
<tr class="separator:a675c233454a6c3e6bcfb38206e89dc48"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Node that implements a full sort of its input with a fixed memory budget, spilling to disk if the input is larger than available memory. Uses <a class="el" href="classimpala_1_1Sorter.html" title="Note that Init() must be called right after the constructor. ">Sorter</a> and <a class="el" href="classimpala_1_1BufferedBlockMgr.html">BufferedBlockMgr</a> for the external sort implementation. Input rows to <a class="el" href="classimpala_1_1SortNode.html">SortNode</a> are materialized by the <a class="el" href="classimpala_1_1Sorter.html" title="Note that Init() must be called right after the constructor. ">Sorter</a> into a single tuple using the expressions specified in sort_exec_exprs_. In <a class="el" href="classimpala_1_1SortNode.html#a069f75cb466ea82d7b475163707e7f65">GetNext()</a>, <a class="el" href="classimpala_1_1SortNode.html">SortNode</a> passes in the output batch to the sorter instance created in <a class="el" href="classimpala_1_1SortNode.html#a6a4e400f5216c5db623dbbaf6e321ed2">Open()</a> to fill it with sorted rows. If a merge phase was performed in the sort, sorted rows are deep copied into the output batch. Otherwise, the sorter instance owns the sorted data. </p>
<p>Definition at line <a class="el" href="sort-node_8h_source.html#l00034">34</a> of file <a class="el" href="sort-node_8h_source.html">sort-node.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="aab7f5d23ead190748b1558f60df96715"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">impala::SortNode::SortNode </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> *&#160;</td>
<td class="paramname"><em>pool</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const TPlanNode &amp;&#160;</td>
<td class="paramname"><em>tnode</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classimpala_1_1DescriptorTbl.html">DescriptorTbl</a> &amp;&#160;</td>
<td class="paramname"><em>descs</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="sort-node_8cc_source.html#l00025">25</a> of file <a class="el" href="sort-node_8cc_source.html">sort-node.cc</a>.</p>
</div>
</div>
<a class="anchor" id="aa52f1cee259ff1a7a1fc73558aa0c3a9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">impala::SortNode::~SortNode </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="sort-node_8cc_source.html#l00031">31</a> of file <a class="el" href="sort-node_8cc_source.html">sort-node.cc</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a19340582202dd61e0b028c28efa5490a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void impala::ExecNode::AddExprCtxsToFree </td>
<td>(</td>
<td class="paramtype">const std::vector&lt; <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * &gt; &amp;&#160;</td>
<td class="paramname"><em>ctxs</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00410">impala::ExecNode::AddExprCtxsToFree()</a>, <a class="el" href="union-node_8cc_source.html#l00058">impala::UnionNode::Prepare()</a>, <a class="el" href="sort-node_8cc_source.html#l00042">Prepare()</a>, <a class="el" href="topn-node_8cc_source.html#l00056">impala::TopNNode::Prepare()</a>, <a class="el" href="exchange-node_8cc_source.html#l00061">impala::ExchangeNode::Prepare()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00094">impala::PartitionedHashJoinNode::Prepare()</a>, <a class="el" href="exec-node_8cc_source.html#l00130">impala::ExecNode::Prepare()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00095">impala::PartitionedAggregationNode::Prepare()</a>, and <a class="el" href="hdfs-scan-node_8cc_source.html#l00304">impala::HdfsScanNode::Prepare()</a>.</p>
</div>
</div>
<a class="anchor" id="afa7de6fd3a4f1580884680c35b9b8804"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void impala::ExecNode::AddExprCtxsToFree </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classimpala_1_1SortExecExprs.html">SortExecExprs</a> &amp;&#160;</td>
<td class="paramname"><em>sort_exec_exprs</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8cc_source.html#l00410">410</a> of file <a class="el" href="exec-node_8cc_source.html">exec-node.cc</a>.</p>
<p>References <a class="el" href="classimpala_1_1ExecNode.html#a19340582202dd61e0b028c28efa5490a">impala::ExecNode::AddExprCtxsToFree()</a>, <a class="el" href="sort-exec-exprs_8h_source.html#l00055">impala::SortExecExprs::lhs_ordering_expr_ctxs()</a>, <a class="el" href="sort-exec-exprs_8h_source.html#l00059">impala::SortExecExprs::rhs_ordering_expr_ctxs()</a>, and <a class="el" href="sort-exec-exprs_8h_source.html#l00050">impala::SortExecExprs::sort_tuple_slot_expr_ctxs()</a>.</p>
</div>
</div>
<a class="anchor" id="a4ad378d275c91637f12ca7fa742d59db"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void impala::ExecNode::AddExprCtxToFree </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *&#160;</td>
<td class="paramname"><em>ctx</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add an <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> to have its local allocations freed by <a class="el" href="classimpala_1_1ExecNode.html#ab8f2832c6a5487aa8168b2a7d65773ee">QueryMaintenance()</a>. Exprs that are evaluated in the main execution thread should be added. Exprs evaluated in a separate thread are generally not safe to add, since a local allocation may be freed while it's being used. Rather than using this mechanism, threads should call FreeLocalAllocations() on local ExprContexts periodically. </p>
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00276">276</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>References <a class="el" href="exec-node_8h_source.html#l00286">impala::ExecNode::expr_ctxs_to_free_</a>.</p>
<p>Referenced by <a class="el" href="analytic-eval-node_8cc_source.html#l00124">impala::AnalyticEvalNode::Prepare()</a>.</p>
</div>
</div>
<a class="anchor" id="a05e056b5d11b187a1d31723c7d1592eb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void impala::ExecNode::AddRuntimeExecOption </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>option</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Appends option to 'runtime_exec_options_'. </p>
<p>Definition at line <a class="el" href="exec-node_8cc_source.html#l00188">188</a> of file <a class="el" href="exec-node_8cc_source.html">exec-node.cc</a>.</p>
<p>References <a class="el" href="runtime-profile_8cc_source.html#l00406">impala::RuntimeProfile::AddInfoString()</a>, <a class="el" href="exec-node_8h_source.html#l00238">impala::ExecNode::exec_options_lock_</a>, <a class="el" href="exec-node_8h_source.html#l00239">impala::ExecNode::runtime_exec_options_</a>, and <a class="el" href="exec-node_8h_source.html#l00161">impala::ExecNode::runtime_profile()</a>.</p>
<p>Referenced by <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00400">impala::PartitionedHashJoinNode::AttachProbeFilters()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00154">impala::HashJoinNode::ConstructBuildSide()</a>, <a class="el" href="blocking-join-node_8cc_source.html#l00156">impala::BlockingJoinNode::Open()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00080">impala::HashJoinNode::Prepare()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00085">impala::AggregationNode::Prepare()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00094">impala::PartitionedHashJoinNode::Prepare()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00095">impala::PartitionedAggregationNode::Prepare()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00304">impala::HdfsScanNode::Prepare()</a>, and <a class="el" href="hdfs-scan-node_8cc_source.html#l00982">impala::HdfsScanNode::StopAndFinalizeCounters()</a>.</p>
</div>
</div>
<a class="anchor" id="a1fb77c5926ec8ad015f153aabb190237"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a>* impala::ExecNode::child </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00241">241</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>References <a class="el" href="exec-node_8h_source.html#l00214">impala::ExecNode::children_</a>.</p>
<p>Referenced by <a class="el" href="cross-join-node_8cc_source.html#l00133">impala::CrossJoinNode::BuildListDebugString()</a>, <a class="el" href="blocking-join-node_8cc_source.html#l00136">impala::BlockingJoinNode::BuildSideThread()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00462">impala::HashJoinNode::CodegenCreateOutputRow()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l01382">impala::PartitionedHashJoinNode::CodegenCreateOutputRow()</a>, <a class="el" href="cross-join-node_8cc_source.html#l00059">impala::CrossJoinNode::ConstructBuildSide()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00154">impala::HashJoinNode::ConstructBuildSide()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00485">impala::PartitionedHashJoinNode::ConstructBuildSide()</a>, <a class="el" href="blocking-join-node_8cc_source.html#l00222">impala::BlockingJoinNode::GetLeftChildRowString()</a>, <a class="el" href="select-node_8cc_source.html#l00049">impala::SelectNode::GetNext()</a>, <a class="el" href="union-node_8cc_source.html#l00119">impala::UnionNode::GetNext()</a>, <a class="el" href="cross-join-node_8cc_source.html#l00085">impala::CrossJoinNode::GetNext()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00218">impala::HashJoinNode::GetNext()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00634">impala::AnalyticEvalNode::GetNextOutputBatch()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00429">impala::PartitionedAggregationNode::Partition::InitStreams()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00378">impala::HashJoinNode::LeftJoinGetNext()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00598">impala::PartitionedHashJoinNode::NextProbeRowBatch()</a>, <a class="el" href="select-node_8cc_source.html#l00042">impala::SelectNode::Open()</a>, <a class="el" href="sort-node_8cc_source.html#l00051">Open()</a>, <a class="el" href="topn-node_8cc_source.html#l00070">impala::TopNNode::Open()</a>, <a class="el" href="blocking-join-node_8cc_source.html#l00156">impala::BlockingJoinNode::Open()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00174">impala::AggregationNode::Open()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00166">impala::AnalyticEvalNode::Open()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00209">impala::PartitionedAggregationNode::Open()</a>, <a class="el" href="union-node_8cc_source.html#l00107">impala::UnionNode::OpenCurrentChild()</a>, <a class="el" href="select-node_8cc_source.html#l00034">impala::SelectNode::Prepare()</a>, <a class="el" href="sort-node_8cc_source.html#l00042">Prepare()</a>, <a class="el" href="union-node_8cc_source.html#l00058">impala::UnionNode::Prepare()</a>, <a class="el" href="topn-node_8cc_source.html#l00056">impala::TopNNode::Prepare()</a>, <a class="el" href="blocking-join-node_8cc_source.html#l00055">impala::BlockingJoinNode::Prepare()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00080">impala::HashJoinNode::Prepare()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00085">impala::AggregationNode::Prepare()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00124">impala::AnalyticEvalNode::Prepare()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00094">impala::PartitionedHashJoinNode::Prepare()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00095">impala::PartitionedAggregationNode::Prepare()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00500">impala::PartitionedHashJoinNode::ProcessBuildInput()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00525">impala::AnalyticEvalNode::ProcessChildBatches()</a>, and <a class="el" href="sort-node_8cc_source.html#l00143">SortInput()</a>.</p>
</div>
</div>
<a class="anchor" id="a016c8ab0bfef3279c80eada73a190e66"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void impala::SortNode::Close </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *&#160;</td>
<td class="paramname"><em>state</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><a class="el" href="classimpala_1_1SortNode.html#a016c8ab0bfef3279c80eada73a190e66">Close()</a> will get called for every exec node, regardless of what else is called and the status of these calls (i.e. <a class="el" href="classimpala_1_1SortNode.html#abb55f2bdc41e080a14e5009b3338aed2">Prepare()</a> may never have been called, or <a class="el" href="classimpala_1_1SortNode.html#abb55f2bdc41e080a14e5009b3338aed2">Prepare()</a>/Open()/GetNext() returned with an error). <a class="el" href="classimpala_1_1SortNode.html#a016c8ab0bfef3279c80eada73a190e66">Close()</a> releases all resources that were allocated in <a class="el" href="classimpala_1_1SortNode.html#a6a4e400f5216c5db623dbbaf6e321ed2">Open()</a>/GetNext(), even if the latter ended with an error. <a class="el" href="classimpala_1_1SortNode.html#a016c8ab0bfef3279c80eada73a190e66">Close()</a> can be called if the node has been prepared or the node is closed. The default implementation updates runtime profile counters and calls <a class="el" href="classimpala_1_1SortNode.html#a016c8ab0bfef3279c80eada73a190e66">Close()</a> on the children. Subclasses should check if the node has already been closed (<a class="el" href="classimpala_1_1ExecNode.html#a467751b7182365c83e867dc3d50b43e2">is_closed()</a>), then close themselves, then call the base <a class="el" href="classimpala_1_1SortNode.html#a016c8ab0bfef3279c80eada73a190e66">Close()</a>. Nodes that are using tuples returned by a child may call <a class="el" href="classimpala_1_1SortNode.html#a016c8ab0bfef3279c80eada73a190e66">Close()</a> on their children before their own <a class="el" href="classimpala_1_1SortNode.html#a016c8ab0bfef3279c80eada73a190e66">Close()</a> if the child node has returned eos. It is only safe to call <a class="el" href="classimpala_1_1SortNode.html#a016c8ab0bfef3279c80eada73a190e66">Close()</a> on the child node while the parent node is still returning rows if the parent node fully materializes the child's input. </p>
<p>Reimplemented from <a class="el" href="classimpala_1_1ExecNode.html#a726e2aca524ace8e4c043377e621285a">impala::ExecNode</a>.</p>
<p>Definition at line <a class="el" href="sort-node_8cc_source.html#l00123">123</a> of file <a class="el" href="sort-node_8cc_source.html">sort-node.cc</a>.</p>
<p>References <a class="el" href="sort-exec-exprs_8cc_source.html#l00062">impala::SortExecExprs::Close()</a>, <a class="el" href="exec-node_8cc_source.html#l00166">impala::ExecNode::Close()</a>, <a class="el" href="exec-node_8h_source.html#l00242">impala::ExecNode::is_closed()</a>, <a class="el" href="sort-node_8h_source.html#l00066">sort_exec_exprs_</a>, and <a class="el" href="sort-node_8h_source.html#l00063">sorter_</a>.</p>
</div>
</div>
<a class="anchor" id="a64bf8cb31a57b9d6dc3f5cd60066a686"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Function * impala::ExecNode::CodegenEvalConjuncts </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *&#160;</td>
<td class="paramname"><em>state</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::vector&lt; <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * &gt; &amp;&#160;</td>
<td class="paramname"><em>conjunct_ctxs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>&quot;EvalConjuncts&quot;</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a codegen'd version of <a class="el" href="classimpala_1_1ExecNode.html#a48ec693b9eb748682b58479751812f08">EvalConjuncts()</a>, or NULL if the function couldn't be codegen'd. The codegen'd version uses inlined, codegen'd GetBooleanVal() functions. </p>
<p>Definition at line <a class="el" href="exec-node_8cc_source.html#l00452">452</a> of file <a class="el" href="exec-node_8cc_source.html">exec-node.cc</a>.</p>
<p>References <a class="el" href="llvm-codegen_8h_source.html#l00171">impala::LlvmCodeGen::FnPrototype::AddArgument()</a>, <a class="el" href="llvm-codegen_8h_source.html#l00214">impala::LlvmCodeGen::context()</a>, <a class="el" href="codegen-anyval_8cc_source.html#l00148">impala::CodegenAnyVal::CreateCallWrapped()</a>, <a class="el" href="llvm-codegen_8h_source.html#l00381">impala::LlvmCodeGen::false_value()</a>, <a class="el" href="llvm-codegen_8cc_source.html#l00596">impala::LlvmCodeGen::FinalizeFunction()</a>, <a class="el" href="runtime-state_8cc_source.html#l00312">impala::RuntimeState::GetCodegen()</a>, <a class="el" href="status_8cc_source.html#l00184">impala::Status::GetDetail()</a>, <a class="el" href="codegen-anyval_8cc_source.html#l00171">impala::CodegenAnyVal::GetIsNull()</a>, <a class="el" href="llvm-codegen_8cc_source.html#l00312">impala::LlvmCodeGen::GetType()</a>, <a class="el" href="codegen-anyval_8cc_source.html#l00258">impala::CodegenAnyVal::GetVal()</a>, <a class="el" href="tuple-row_8h_source.html#l00076">impala::TupleRow::LLVM_CLASS_NAME</a>, <a class="el" href="expr-context_8h_source.html#l00126">impala::ExprContext::LLVM_CLASS_NAME</a>, <a class="el" href="status_8h_source.html#l00172">impala::Status::ok()</a>, <a class="el" href="llvm-codegen_8h_source.html#l00380">impala::LlvmCodeGen::true_value()</a>, <a class="el" href="exec-node_8h_source.html#l00155">impala::ExecNode::type()</a>, <a class="el" href="types_8h_source.html#l00030">impala::TYPE_BOOLEAN</a>, <a class="el" href="types_8h_source.html#l00033">impala::TYPE_INT</a>, and <a class="el" href="logging_8h_source.html#l00057">VLOG_QUERY</a>.</p>
<p>Referenced by <a class="el" href="hdfs-avro-scanner_8cc_source.html#l00885">impala::HdfsAvroScanner::CodegenDecodeAvroData()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00559">impala::HashJoinNode::CodegenProcessProbeBatch()</a>, and <a class="el" href="partitioned-hash-join-node_8cc_source.html#l01498">impala::PartitionedHashJoinNode::CodegenProcessProbeBatch()</a>.</p>
</div>
</div>
<a class="anchor" id="a79a78df488ddcb12e0150b919efc059a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void impala::ExecNode::CollectNodes </td>
<td>(</td>
<td class="paramtype">TPlanNodeType::type&#160;</td>
<td class="paramname"><em>node_type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::vector&lt; <a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a> * &gt; *&#160;</td>
<td class="paramname"><em>nodes</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Collect all nodes of given 'node_type' that are part of this subtree, and return in 'nodes'. </p>
<p>Definition at line <a class="el" href="exec-node_8cc_source.html#l00359">359</a> of file <a class="el" href="exec-node_8cc_source.html">exec-node.cc</a>.</p>
<p>References <a class="el" href="exec-node_8h_source.html#l00214">impala::ExecNode::children_</a>, and <a class="el" href="exec-node_8h_source.html#l00210">impala::ExecNode::type_</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00366">impala::ExecNode::CollectScanNodes()</a>, and <a class="el" href="plan-fragment-executor_8cc_source.html#l00080">impala::PlanFragmentExecutor::Prepare()</a>.</p>
</div>
</div>
<a class="anchor" id="aeaf6b6a9dff1fd661e63258272c62b96"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void impala::ExecNode::CollectScanNodes </td>
<td>(</td>
<td class="paramtype">std::vector&lt; <a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a> * &gt; *&#160;</td>
<td class="paramname"><em>nodes</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Collect all scan node types. </p>
<p>Definition at line <a class="el" href="exec-node_8cc_source.html#l00366">366</a> of file <a class="el" href="exec-node_8cc_source.html">exec-node.cc</a>.</p>
<p>References <a class="el" href="exec-node_8cc_source.html#l00359">impala::ExecNode::CollectNodes()</a>.</p>
<p>Referenced by <a class="el" href="plan-fragment-executor_8cc_source.html#l00080">impala::PlanFragmentExecutor::Prepare()</a>.</p>
</div>
</div>
<a class="anchor" id="ad21c25a63f7a11127082710941d23654"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const std::vector&lt;<a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a>*&gt;&amp; impala::ExecNode::conjunct_ctxs </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00152">152</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>References <a class="el" href="exec-node_8h_source.html#l00212">impala::ExecNode::conjunct_ctxs_</a>.</p>
<p>Referenced by <a class="el" href="hdfs-scan-node_8cc_source.html#l00956">impala::HdfsScanNode::ComputeSlotMaterializationOrder()</a>, <a class="el" href="select-node_8cc_source.html#l00088">impala::SelectNode::CopyRows()</a>, <a class="el" href="union-node_8cc_source.html#l00198">impala::UnionNode::EvalAndMaterializeExprs()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00218">impala::HashJoinNode::GetNext()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00865">impala::PartitionedHashJoinNode::OutputUnmatchedBuild()</a>, <a class="el" href="hash-join-node-ir_8cc_source.html#l00040">impala::HashJoinNode::ProcessProbeBatch()</a>, and <a class="el" href="partitioned-hash-join-node-ir_8cc_source.html#l00040">impala::PartitionedHashJoinNode::ProcessProbeBatch()</a>.</p>
</div>
</div>
<a class="anchor" id="a2036b7d443ce25c963cf138caca7a948"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> impala::SortNode::CreateBlockMgr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *&#160;</td>
<td class="paramname"><em>state</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a block manager object and set it in block_mgr_. Returns and sets the query status to <a class="el" href="classimpala_1_1Status.html#ab9e27b58a24e93ade3d526311872afc9">Status::MEM_LIMIT_EXCEEDED</a> if there is not enough memory for the sort. </p>
</div>
</div>
<a class="anchor" id="af055b7d9d3de849cbde01b12c608ee38"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> impala::ExecNode::CreateNode </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> *&#160;</td>
<td class="paramname"><em>pool</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const TPlanNode &amp;&#160;</td>
<td class="paramname"><em>tnode</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classimpala_1_1DescriptorTbl.html">DescriptorTbl</a> &amp;&#160;</td>
<td class="paramname"><em>descs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a> **&#160;</td>
<td class="paramname"><em>node</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a single exec node derived from thrift node; place exec node in 'pool'. </p>
<p>Definition at line <a class="el" href="exec-node_8cc_source.html#l00260">260</a> of file <a class="el" href="exec-node_8cc_source.html">exec-node.cc</a>.</p>
<p>References <a class="el" href="object-pool_8h_source.html#l00042">impala::ObjectPool::Add()</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, and <a class="el" href="status_8h_source.html#l00242">RETURN_IF_ERROR</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00218">impala::ExecNode::CreateTreeHelper()</a>.</p>
</div>
</div>
<a class="anchor" id="aad99835d1957684b656d5f2d4427b5eb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> impala::ExecNode::CreateTree </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> *&#160;</td>
<td class="paramname"><em>pool</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const TPlan &amp;&#160;</td>
<td class="paramname"><em>plan</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classimpala_1_1DescriptorTbl.html">DescriptorTbl</a> &amp;&#160;</td>
<td class="paramname"><em>descs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a> **&#160;</td>
<td class="paramname"><em>root</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates exec node tree from list of nodes contained in plan via depth-first traversal. All nodes are placed in pool. Returns error if 'plan' is corrupted, otherwise success. </p>
<p>Definition at line <a class="el" href="exec-node_8cc_source.html#l00199">199</a> of file <a class="el" href="exec-node_8cc_source.html">exec-node.cc</a>.</p>
<p>References <a class="el" href="exec-node_8cc_source.html#l00218">impala::ExecNode::CreateTreeHelper()</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, and <a class="el" href="status_8h_source.html#l00172">impala::Status::ok()</a>.</p>
<p>Referenced by <a class="el" href="plan-fragment-executor_8cc_source.html#l00080">impala::PlanFragmentExecutor::Prepare()</a>.</p>
</div>
</div>
<a class="anchor" id="a3d97c1b8247ed300dd82db66f38e7b00"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> impala::ExecNode::CreateTreeHelper </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> *&#160;</td>
<td class="paramname"><em>pool</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::vector&lt; TPlanNode &gt; &amp;&#160;</td>
<td class="paramname"><em>tnodes</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classimpala_1_1DescriptorTbl.html">DescriptorTbl</a> &amp;&#160;</td>
<td class="paramname"><em>descs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a> *&#160;</td>
<td class="paramname"><em>parent</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int *&#160;</td>
<td class="paramname"><em>node_idx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a> **&#160;</td>
<td class="paramname"><em>root</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8cc_source.html#l00218">218</a> of file <a class="el" href="exec-node_8cc_source.html">exec-node.cc</a>.</p>
<p>References <a class="el" href="runtime-profile_8cc_source.html#l00368">impala::RuntimeProfile::AddChild()</a>, <a class="el" href="exec-node_8h_source.html#l00214">impala::ExecNode::children_</a>, <a class="el" href="exec-node_8cc_source.html#l00260">impala::ExecNode::CreateNode()</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, <a class="el" href="status_8h_source.html#l00242">RETURN_IF_ERROR</a>, and <a class="el" href="exec-node_8h_source.html#l00161">impala::ExecNode::runtime_profile()</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00199">impala::ExecNode::CreateTree()</a>.</p>
</div>
</div>
<a class="anchor" id="a6c59554968160305a44e0efb1ba74d22"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void impala::SortNode::DebugString </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>indentation_level</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::stringstream *&#160;</td>
<td class="paramname"><em>out</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Recursive helper method for generating a string for <a class="el" href="classimpala_1_1SortNode.html#a6c59554968160305a44e0efb1ba74d22">DebugString()</a>. Implementations should call DebugString(int, std::stringstream) on their children. Input parameters: indentation_level: Current level in plan tree. Output parameters: out: Stream to accumulate debug string. </p>
<p>Reimplemented from <a class="el" href="classimpala_1_1ExecNode.html#ad01139ec9ccb2cdb2069995bc282593b">impala::ExecNode</a>.</p>
<p>Definition at line <a class="el" href="sort-node_8cc_source.html#l00130">130</a> of file <a class="el" href="sort-node_8cc_source.html">sort-node.cc</a>.</p>
<p>References <a class="el" href="exec-node_8cc_source.html#l00345">impala::ExecNode::DebugString()</a>, <a class="el" href="expr_8cc_source.html#l00385">impala::Expr::DebugString()</a>, <a class="el" href="sort-node_8h_source.html#l00067">is_asc_order_</a>, <a class="el" href="sort-exec-exprs_8h_source.html#l00055">impala::SortExecExprs::lhs_ordering_expr_ctxs()</a>, <a class="el" href="sort-node_8h_source.html#l00068">nulls_first_</a>, and <a class="el" href="sort-node_8h_source.html#l00066">sort_exec_exprs_</a>.</p>
</div>
</div>
<a class="anchor" id="a56de50f3c92483ba38f6e42ab19cc0a2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">string impala::ExecNode::DebugString </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a string representation in DFS order of the plan rooted at this. </p>
<p>Definition at line <a class="el" href="exec-node_8cc_source.html#l00345">345</a> of file <a class="el" href="exec-node_8cc_source.html">exec-node.cc</a>.</p>
<p>Referenced by <a class="el" href="sort-node_8cc_source.html#l00130">DebugString()</a>, <a class="el" href="topn-node_8cc_source.html#l00184">impala::TopNNode::DebugString()</a>, <a class="el" href="exchange-node_8cc_source.html#l00207">impala::ExchangeNode::DebugString()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00401">impala::AggregationNode::DebugString()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00766">impala::AnalyticEvalNode::DebugString()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00716">impala::PartitionedAggregationNode::DebugString()</a>, <a class="el" href="blocking-join-node_8cc_source.html#l00212">impala::BlockingJoinNode::DebugString()</a>, and <a class="el" href="plan-fragment-executor_8cc_source.html#l00080">impala::PlanFragmentExecutor::Prepare()</a>.</p>
</div>
</div>
<a class="anchor" id="a48ec693b9eb748682b58479751812f08"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classbool.html">bool</a> impala::ExecNode::EvalConjuncts </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *const *&#160;</td>
<td class="paramname"><em>ctxs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>num_ctxs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *&#160;</td>
<td class="paramname"><em>row</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Evaluate ExprContexts over row. Returns true if all exprs return true. TODO: This doesn't use the vector&lt;Expr*&gt; signature because I haven't figured out how to deal with declaring a templated std:vector type in IR </p>
<p>Definition at line <a class="el" href="exec-node_8cc_source.html#l00393">393</a> of file <a class="el" href="exec-node_8cc_source.html">exec-node.cc</a>.</p>
<p>References <a class="el" href="expr-context_8cc_source.html#l00310">impala::ExprContext::GetBooleanVal()</a>, <a class="el" href="udf_8h_source.html#l00359">impala_udf::AnyVal::is_null</a>, and <a class="el" href="udf_8h_source.html#l00364">impala_udf::BooleanVal::val</a>.</p>
<p>Referenced by <a class="el" href="select-node_8cc_source.html#l00088">impala::SelectNode::CopyRows()</a>, <a class="el" href="union-node_8cc_source.html#l00198">impala::UnionNode::EvalAndMaterializeExprs()</a>, <a class="el" href="hdfs-scanner_8h_source.html#l00266">impala::HdfsScanner::EvalConjuncts()</a>, <a class="el" href="partitioned-hash-join-node-ir_8cc_source.html#l00032">EvalOtherJoinConjuncts()</a>, <a class="el" href="hash-join-node-ir_8cc_source.html#l00033">EvalOtherJoinConjuncts2()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l01163">impala::PartitionedHashJoinNode::EvaluateNullProbe()</a>, <a class="el" href="hbase-scan-node_8cc_source.html#l00147">impala::HBaseScanNode::GetNext()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00218">impala::HashJoinNode::GetNext()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00230">impala::AggregationNode::GetNext()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00271">impala::PartitionedAggregationNode::GetNext()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00634">impala::AnalyticEvalNode::GetNextOutputBatch()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00998">impala::PartitionedHashJoinNode::OutputNullAwareProbeRows()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00865">impala::PartitionedHashJoinNode::OutputUnmatchedBuild()</a>, <a class="el" href="cross-join-node_8cc_source.html#l00142">impala::CrossJoinNode::ProcessLeftChildBatch()</a>, <a class="el" href="hash-join-node-ir_8cc_source.html#l00040">impala::HashJoinNode::ProcessProbeBatch()</a>, and <a class="el" href="partitioned-hash-join-node-ir_8cc_source.html#l00040">impala::PartitionedHashJoinNode::ProcessProbeBatch()</a>.</p>
</div>
</div>
<a class="anchor" id="a310d3a6b28f5bb1046a90ef8995ffb12"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> impala::ExecNode::ExecDebugAction </td>
<td>(</td>
<td class="paramtype">TExecNodePhase::type&#160;</td>
<td class="paramname"><em>phase</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *&#160;</td>
<td class="paramname"><em>state</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Executes debug_action_ if phase matches debug_phase_. 'phase' must not be INVALID. </p>
<p>Definition at line <a class="el" href="exec-node_8cc_source.html#l00378">378</a> of file <a class="el" href="exec-node_8cc_source.html">exec-node.cc</a>.</p>
<p>References <a class="el" href="status_8h_source.html#l00088">impala::Status::CANCELLED</a>, <a class="el" href="exec-node_8h_source.html#l00220">impala::ExecNode::debug_action_</a>, <a class="el" href="exec-node_8h_source.html#l00219">impala::ExecNode::debug_phase_</a>, <a class="el" href="runtime-state_8h_source.html#l00235">impala::RuntimeState::is_cancelled()</a>, and <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>.</p>
<p>Referenced by <a class="el" href="select-node_8cc_source.html#l00049">impala::SelectNode::GetNext()</a>, <a class="el" href="sort-node_8cc_source.html#l00078">GetNext()</a>, <a class="el" href="union-node_8cc_source.html#l00119">impala::UnionNode::GetNext()</a>, <a class="el" href="hbase-scan-node_8cc_source.html#l00147">impala::HBaseScanNode::GetNext()</a>, <a class="el" href="topn-node_8cc_source.html#l00106">impala::TopNNode::GetNext()</a>, <a class="el" href="exchange-node_8cc_source.html#l00120">impala::ExchangeNode::GetNext()</a>, <a class="el" href="cross-join-node_8cc_source.html#l00085">impala::CrossJoinNode::GetNext()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00218">impala::HashJoinNode::GetNext()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00230">impala::AggregationNode::GetNext()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00696">impala::AnalyticEvalNode::GetNext()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00735">impala::PartitionedHashJoinNode::GetNext()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00271">impala::PartitionedAggregationNode::GetNext()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00139">impala::HdfsScanNode::GetNextInternal()</a>, <a class="el" href="exec-node_8cc_source.html#l00154">impala::ExecNode::Open()</a>, and <a class="el" href="exec-node_8cc_source.html#l00130">impala::ExecNode::Prepare()</a>.</p>
</div>
</div>
<a class="anchor" id="abe940aa2d7da783c4e8c65f0af22ad8f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1MemTracker.html">MemTracker</a>* impala::ExecNode::expr_mem_tracker </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00163">163</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>References <a class="el" href="exec-node_8h_source.html#l00233">impala::ExecNode::expr_mem_tracker_</a>.</p>
<p>Referenced by <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00429">impala::PartitionedAggregationNode::Partition::InitStreams()</a>, <a class="el" href="sort-node_8cc_source.html#l00042">Prepare()</a>, <a class="el" href="union-node_8cc_source.html#l00058">impala::UnionNode::Prepare()</a>, <a class="el" href="topn-node_8cc_source.html#l00056">impala::TopNNode::Prepare()</a>, <a class="el" href="exchange-node_8cc_source.html#l00061">impala::ExchangeNode::Prepare()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00080">impala::HashJoinNode::Prepare()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00085">impala::AggregationNode::Prepare()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00124">impala::AnalyticEvalNode::Prepare()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00094">impala::PartitionedHashJoinNode::Prepare()</a>, <a class="el" href="exec-node_8cc_source.html#l00130">impala::ExecNode::Prepare()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00095">impala::PartitionedAggregationNode::Prepare()</a>, and <a class="el" href="hdfs-scan-node_8cc_source.html#l00304">impala::HdfsScanNode::Prepare()</a>.</p>
</div>
</div>
<a class="anchor" id="a069f75cb466ea82d7b475163707e7f65"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> impala::SortNode::GetNext </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *&#160;</td>
<td class="paramname"><em>state</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classimpala_1_1RowBatch.html">RowBatch</a> *&#160;</td>
<td class="paramname"><em>row_batch</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classbool.html">bool</a> *&#160;</td>
<td class="paramname"><em>eos</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Retrieves rows and returns them via row_batch. Sets eos to true if subsequent calls will not retrieve any more rows. Data referenced by any tuples returned in row_batch must not be overwritten by the callee until <a class="el" href="classimpala_1_1SortNode.html#a016c8ab0bfef3279c80eada73a190e66">Close()</a> is called. The memory holding that data can be returned via row_batch's tuple_data_pool (in which case it may be deleted by the caller) or held on to by the callee. The row_batch, including its tuple_data_pool, will be destroyed by the caller at some point prior to the final <a class="el" href="classimpala_1_1SortNode.html#a016c8ab0bfef3279c80eada73a190e66">Close()</a> call. In other words, if the memory holding the tuple data will be referenced by the callee in subsequent <a class="el" href="classimpala_1_1SortNode.html#a069f75cb466ea82d7b475163707e7f65">GetNext()</a> calls, it must <em>not</em> be attached to the row_batch's tuple_data_pool. Caller must not be holding any io buffers. This will cause deadlock. TODO: <a class="el" href="classimpala_1_1AggregationNode.html">AggregationNode</a> and <a class="el" href="classimpala_1_1HashJoinNode.html">HashJoinNode</a> cannot be "re-opened" yet. </p>
<p>Implements <a class="el" href="classimpala_1_1ExecNode.html#a151fe2bdeb1cd399dd561f049aee2523">impala::ExecNode</a>.</p>
<p>Definition at line <a class="el" href="sort-node_8cc_source.html#l00078">78</a> of file <a class="el" href="sort-node_8cc_source.html">sort-node.cc</a>.</p>
<p>References <a class="el" href="row-batch_8h_source.html#l00179">impala::RowBatch::CopyRows()</a>, <a class="el" href="runtime-profile_8h_source.html#l00056">COUNTER_SET</a>, <a class="el" href="exec-node_8cc_source.html#l00378">impala::ExecNode::ExecDebugAction()</a>, <a class="el" href="exec-node_8h_source.html#l00222">impala::ExecNode::limit_</a>, <a class="el" href="row-batch_8h_source.html#l00215">impala::RowBatch::num_rows()</a>, <a class="el" href="exec-node_8h_source.html#l00223">impala::ExecNode::num_rows_returned_</a>, <a class="el" href="sort-node_8h_source.html#l00060">num_rows_skipped_</a>, <a class="el" href="sort-node_8h_source.html#l00059">offset_</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, <a class="el" href="exec-node_8cc_source.html#l00401">impala::ExecNode::QueryMaintenance()</a>, <a class="el" href="exec-node_8h_source.html#l00159">impala::ExecNode::ReachedLimit()</a>, <a class="el" href="runtime-state_8h_source.html#l00384">RETURN_IF_CANCELLED</a>, <a class="el" href="status_8h_source.html#l00242">RETURN_IF_ERROR</a>, <a class="el" href="exec-node_8h_source.html#l00226">impala::ExecNode::rows_returned_counter_</a>, <a class="el" href="exec-node_8h_source.html#l00225">impala::ExecNode::runtime_profile_</a>, <a class="el" href="runtime-profile_8h_source.html#l00053">SCOPED_TIMER</a>, <a class="el" href="row-batch_8h_source.html#l00113">impala::RowBatch::set_num_rows()</a>, and <a class="el" href="sort-node_8h_source.html#l00063">sorter_</a>.</p>
<p>Referenced by <a class="el" href="sort-node_8cc_source.html#l00143">SortInput()</a>.</p>
</div>
</div>
<a class="anchor" id="a3e2d144b60f904f6b1f3219b9471aad3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int impala::ExecNode::GetNodeIdFromProfile </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1RuntimeProfile.html">RuntimeProfile</a> *&#160;</td>
<td class="paramname"><em>p</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Extract node id from p-&gt;<a class="el" href="namespaceimpala.html#aaebb9aadfa9e5aec064bc26565df06d3">name()</a>. </p>
<p>Definition at line <a class="el" href="exec-node_8cc_source.html#l00062">62</a> of file <a class="el" href="exec-node_8cc_source.html">exec-node.cc</a>.</p>
<p>References <a class="el" href="runtime-profile_8h_source.html#l00493">impala::RuntimeProfile::metadata()</a>.</p>
</div>
</div>
<a class="anchor" id="a2088a36bc4bb4e0c3c7c1444198b76dd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int impala::ExecNode::id </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00154">154</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>References <a class="el" href="exec-node_8h_source.html#l00209">impala::ExecNode::id_</a>.</p>
<p>Referenced by <a class="el" href="analytic-eval-node_8cc_source.html#l00337">impala::AnalyticEvalNode::AddResultTuple()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00306">impala::AnalyticEvalNode::AddRow()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00030">impala::AnalyticEvalNode::AnalyticEvalNode()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00696">impala::AnalyticEvalNode::GetNext()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00634">impala::AnalyticEvalNode::GetNextOutputBatch()</a>, <a class="el" href="hdfs-scanner_8cc_source.html#l00087">impala::HdfsScanner::InitializeWriteTuplesFn()</a>, <a class="el" href="hdfs-avro-scanner_8cc_source.html#l00493">impala::HdfsAvroScanner::InitNewRange()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00435">impala::AnalyticEvalNode::InitNextPartition()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00922">impala::PartitionedAggregationNode::MoveHashPartitions()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l01310">impala::PartitionedHashJoinNode::NodeDebugString()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00166">impala::AnalyticEvalNode::Open()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00511">impala::HdfsScanNode::Open()</a>, <a class="el" href="plan-fragment-executor_8cc_source.html#l00080">impala::PlanFragmentExecutor::Prepare()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00500">impala::PartitionedHashJoinNode::ProcessBuildInput()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00548">impala::AnalyticEvalNode::ProcessChildBatch()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00797">impala::HdfsScanNode::ScannerThread()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00391">impala::AnalyticEvalNode::TryAddRemainingResults()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00364">impala::AnalyticEvalNode::TryAddResultTupleForCurrRow()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00350">impala::AnalyticEvalNode::TryAddResultTupleForPrevRow()</a>, and <a class="el" href="analytic-eval-node_8cc_source.html#l00375">impala::AnalyticEvalNode::TryRemoveRowsBeforeWindow()</a>.</p>
</div>
</div>
<a class="anchor" id="a58a1e577d39846c7e6e8373bc9f413a8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> impala::SortNode::Init </td>
<td>(</td>
<td class="paramtype">const TPlanNode &amp;&#160;</td>
<td class="paramname"><em>tnode</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Initializes this object from the thrift tnode desc. The subclass should do any initialization that can fail in <a class="el" href="classimpala_1_1SortNode.html#a58a1e577d39846c7e6e8373bc9f413a8">Init()</a> rather than the ctor. If overridden in subclass, must first call superclass's <a class="el" href="classimpala_1_1SortNode.html#a58a1e577d39846c7e6e8373bc9f413a8">Init()</a>. </p>
<p>Reimplemented from <a class="el" href="classimpala_1_1ExecNode.html#a13f30c4259774ce6896fa5c1d5d86966">impala::ExecNode</a>.</p>
<p>Definition at line <a class="el" href="sort-node_8cc_source.html#l00034">34</a> of file <a class="el" href="sort-node_8cc_source.html">sort-node.cc</a>.</p>
<p>References <a class="el" href="sort-exec-exprs_8cc_source.html#l00021">impala::SortExecExprs::Init()</a>, <a class="el" href="exec-node_8cc_source.html#l00124">impala::ExecNode::Init()</a>, <a class="el" href="sort-node_8h_source.html#l00067">is_asc_order_</a>, <a class="el" href="sort-node_8h_source.html#l00068">nulls_first_</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, <a class="el" href="exec-node_8h_source.html#l00211">impala::ExecNode::pool_</a>, <a class="el" href="status_8h_source.html#l00242">RETURN_IF_ERROR</a>, and <a class="el" href="sort-node_8h_source.html#l00066">sort_exec_exprs_</a>.</p>
</div>
</div>
<a class="anchor" id="adf07b8ec102e4bc7cc3707157c8f0e99"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void impala::ExecNode::InitRuntimeProfile </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>name</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8cc_source.html#l00371">371</a> of file <a class="el" href="exec-node_8cc_source.html">exec-node.cc</a>.</p>
<p>References <a class="el" href="exec-node_8h_source.html#l00209">impala::ExecNode::id_</a>, <a class="el" href="exec-node_8h_source.html#l00211">impala::ExecNode::pool_</a>, and <a class="el" href="exec-node_8h_source.html#l00225">impala::ExecNode::runtime_profile_</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00106">impala::ExecNode::ExecNode()</a>.</p>
</div>
</div>
<a class="anchor" id="a467751b7182365c83e867dc3d50b43e2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classbool.html">bool</a> impala::ExecNode::is_closed </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00242">242</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>References <a class="el" href="exec-node_8h_source.html#l00283">impala::ExecNode::is_closed_</a>.</p>
<p>Referenced by <a class="el" href="select-node_8cc_source.html#l00115">impala::SelectNode::Close()</a>, <a class="el" href="sort-node_8cc_source.html#l00123">Close()</a>, <a class="el" href="union-node_8cc_source.html#l00186">impala::UnionNode::Close()</a>, <a class="el" href="topn-node_8cc_source.html#l00136">impala::TopNNode::Close()</a>, <a class="el" href="exchange-node_8cc_source.html#l00098">impala::ExchangeNode::Close()</a>, <a class="el" href="hbase-scan-node_8cc_source.html#l00277">impala::HBaseScanNode::Close()</a>, <a class="el" href="cross-join-node_8cc_source.html#l00052">impala::CrossJoinNode::Close()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00145">impala::HashJoinNode::Close()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00278">impala::AggregationNode::Close()</a>, <a class="el" href="blocking-join-node_8cc_source.html#l00128">impala::BlockingJoinNode::Close()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00738">impala::AnalyticEvalNode::Close()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00192">impala::PartitionedHashJoinNode::Close()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00380">impala::PartitionedAggregationNode::Close()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00622">impala::HdfsScanNode::Close()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00570">impala::PartitionedAggregationNode::Partition::Close()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00248">impala::PartitionedHashJoinNode::Partition::Close()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l01200">impala::PartitionedHashJoinNode::ReserveTupleStreamBlocks()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00450">impala::PartitionedHashJoinNode::SpillPartition()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00872">impala::PartitionedAggregationNode::SpillPartition()</a>, and <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00235">impala::PartitionedHashJoinNode::Partition::~Partition()</a>.</p>
</div>
</div>
<a class="anchor" id="aa4941adc86040c00d0fe1b52bb1c0221"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual <a class="el" href="classbool.html">bool</a> impala::ExecNode::IsScanNode </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reimplemented in <a class="el" href="classimpala_1_1ScanNode.html#adbdf97ab757ffe5ccdf37552d946d280">impala::ScanNode</a>.</p>
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00251">251</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
</div>
</div>
<a class="anchor" id="a8083cea2b4b6646c80d8d87a0522074b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64_t impala::ExecNode::limit </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00158">158</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>References <a class="el" href="exec-node_8h_source.html#l00222">impala::ExecNode::limit_</a>.</p>
<p>Referenced by <a class="el" href="cross-join-node_8cc_source.html#l00085">impala::CrossJoinNode::GetNext()</a>, and <a class="el" href="hash-join-node_8cc_source.html#l00378">impala::HashJoinNode::LeftJoinGetNext()</a>.</p>
</div>
</div>
<a class="anchor" id="abd7922a579e4adc353756849a0f45b48"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1MemTracker.html">MemTracker</a>* impala::ExecNode::mem_tracker </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00162">162</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>References <a class="el" href="exec-node_8h_source.html#l00230">impala::ExecNode::mem_tracker_</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00166">impala::ExecNode::Close()</a>, <a class="el" href="cross-join-node_8cc_source.html#l00059">impala::CrossJoinNode::ConstructBuildSide()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00154">impala::HashJoinNode::ConstructBuildSide()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00706">impala::HdfsScanNode::EnoughMemoryForScannerThread()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00634">impala::AnalyticEvalNode::GetNextOutputBatch()</a>, <a class="el" href="sort-node_8cc_source.html#l00051">Open()</a>, <a class="el" href="topn-node_8cc_source.html#l00070">impala::TopNNode::Open()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00174">impala::AggregationNode::Open()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00166">impala::AnalyticEvalNode::Open()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00209">impala::PartitionedAggregationNode::Open()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00511">impala::HdfsScanNode::Open()</a>, <a class="el" href="union-node_8cc_source.html#l00107">impala::UnionNode::OpenCurrentChild()</a>, <a class="el" href="select-node_8cc_source.html#l00034">impala::SelectNode::Prepare()</a>, <a class="el" href="hbase-scan-node_8cc_source.html#l00056">impala::HBaseScanNode::Prepare()</a>, <a class="el" href="topn-node_8cc_source.html#l00056">impala::TopNNode::Prepare()</a>, <a class="el" href="blocking-join-node_8cc_source.html#l00055">impala::BlockingJoinNode::Prepare()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00080">impala::HashJoinNode::Prepare()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00085">impala::AggregationNode::Prepare()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00124">impala::AnalyticEvalNode::Prepare()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00094">impala::PartitionedHashJoinNode::Prepare()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00095">impala::PartitionedAggregationNode::Prepare()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00304">impala::HdfsScanNode::Prepare()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00661">impala::PartitionedHashJoinNode::PrepareNextPartition()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00500">impala::PartitionedHashJoinNode::ProcessBuildInput()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00849">impala::PartitionedAggregationNode::ProcessStream()</a>, <a class="el" href="hdfs-rcfile-scanner_8cc_source.html#l00254">impala::HdfsRCFileScanner::ReadRowGroup()</a>, <a class="el" href="hdfs-avro-scanner_8cc_source.html#l00220">impala::HdfsAvroScanner::ResolveSchemas()</a>, <a class="el" href="sort-node_8cc_source.html#l00143">SortInput()</a>, and <a class="el" href="hdfs-scanner_8cc_source.html#l00108">impala::HdfsScanner::StartNewRowBatch()</a>.</p>
</div>
</div>
<a class="anchor" id="a6a4e400f5216c5db623dbbaf6e321ed2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> impala::SortNode::Open </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *&#160;</td>
<td class="paramname"><em>state</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Performs any preparatory work prior to calling <a class="el" href="classimpala_1_1SortNode.html#a069f75cb466ea82d7b475163707e7f65">GetNext()</a>. Caller must not be holding any io buffers. This will cause deadlock. If overridden in subclass, must first call superclass's <a class="el" href="classimpala_1_1SortNode.html#a6a4e400f5216c5db623dbbaf6e321ed2">Open()</a>. If a parent exec node adds slot filters (see <a class="el" href="classimpala_1_1RuntimeState.html#a7ec83e8d4a3c913dce557835c01c984c">RuntimeState::AddBitmapFilter()</a>), they need to be added before calling <a class="el" href="classimpala_1_1SortNode.html#a6a4e400f5216c5db623dbbaf6e321ed2">Open()</a> on the child that will consume them. </p>
<p>Reimplemented from <a class="el" href="classimpala_1_1ExecNode.html#a0e9b5636a80c8fe8c2ab31990c84ff51">impala::ExecNode</a>.</p>
<p>Definition at line <a class="el" href="sort-node_8cc_source.html#l00051">51</a> of file <a class="el" href="sort-node_8cc_source.html">sort-node.cc</a>.</p>
<p>References <a class="el" href="exec-node_8h_source.html#l00241">impala::ExecNode::child()</a>, <a class="el" href="exec-node_8cc_source.html#l00166">impala::ExecNode::Close()</a>, <a class="el" href="sort-node_8h_source.html#l00067">is_asc_order_</a>, <a class="el" href="sort-exec-exprs_8h_source.html#l00055">impala::SortExecExprs::lhs_ordering_expr_ctxs()</a>, <a class="el" href="exec-node_8h_source.html#l00162">impala::ExecNode::mem_tracker()</a>, <a class="el" href="sort-node_8h_source.html#l00068">nulls_first_</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, <a class="el" href="sort-exec-exprs_8cc_source.html#l00053">impala::SortExecExprs::Open()</a>, <a class="el" href="exec-node_8cc_source.html#l00154">impala::ExecNode::Open()</a>, <a class="el" href="exec-node_8cc_source.html#l00401">impala::ExecNode::QueryMaintenance()</a>, <a class="el" href="runtime-state_8h_source.html#l00384">RETURN_IF_CANCELLED</a>, <a class="el" href="status_8h_source.html#l00242">RETURN_IF_ERROR</a>, <a class="el" href="sort-exec-exprs_8h_source.html#l00059">impala::SortExecExprs::rhs_ordering_expr_ctxs()</a>, <a class="el" href="exec-node_8h_source.html#l00215">impala::ExecNode::row_descriptor_</a>, <a class="el" href="exec-node_8h_source.html#l00161">impala::ExecNode::runtime_profile()</a>, <a class="el" href="exec-node_8h_source.html#l00225">impala::ExecNode::runtime_profile_</a>, <a class="el" href="runtime-profile_8h_source.html#l00053">SCOPED_TIMER</a>, <a class="el" href="sort-node_8h_source.html#l00066">sort_exec_exprs_</a>, <a class="el" href="sort-exec-exprs_8h_source.html#l00050">impala::SortExecExprs::sort_tuple_slot_expr_ctxs()</a>, <a class="el" href="sort-node_8h_source.html#l00063">sorter_</a>, and <a class="el" href="sort-node_8cc_source.html#l00143">SortInput()</a>.</p>
</div>
</div>
<a class="anchor" id="abb55f2bdc41e080a14e5009b3338aed2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> impala::SortNode::Prepare </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *&#160;</td>
<td class="paramname"><em>state</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets up internal structures, etc., without doing any actual work. Must be called prior to <a class="el" href="classimpala_1_1SortNode.html#a6a4e400f5216c5db623dbbaf6e321ed2">Open()</a>. Will only be called once in this node's lifetime. All code generation (adding functions to the <a class="el" href="classimpala_1_1LlvmCodeGen.html" title="LLVM code generator. This is the top level object to generate jitted code. ">LlvmCodeGen</a> object) must happen in <a class="el" href="classimpala_1_1SortNode.html#abb55f2bdc41e080a14e5009b3338aed2">Prepare()</a>. Retrieving the jit compiled function pointer must happen in <a class="el" href="classimpala_1_1SortNode.html#a6a4e400f5216c5db623dbbaf6e321ed2">Open()</a>. If overridden in subclass, must first call superclass's <a class="el" href="classimpala_1_1SortNode.html#abb55f2bdc41e080a14e5009b3338aed2">Prepare()</a>. </p>
<p>Reimplemented from <a class="el" href="classimpala_1_1ExecNode.html#a0ae75733979977dbd9e7270359631b3e">impala::ExecNode</a>.</p>
<p>Definition at line <a class="el" href="sort-node_8cc_source.html#l00042">42</a> of file <a class="el" href="sort-node_8cc_source.html">sort-node.cc</a>.</p>
<p>References <a class="el" href="classimpala_1_1ExecNode.html#a19340582202dd61e0b028c28efa5490a">impala::ExecNode::AddExprCtxsToFree()</a>, <a class="el" href="exec-node_8h_source.html#l00241">impala::ExecNode::child()</a>, <a class="el" href="exec-node_8h_source.html#l00163">impala::ExecNode::expr_mem_tracker()</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, <a class="el" href="sort-exec-exprs_8cc_source.html#l00042">impala::SortExecExprs::Prepare()</a>, <a class="el" href="exec-node_8cc_source.html#l00130">impala::ExecNode::Prepare()</a>, <a class="el" href="status_8h_source.html#l00242">RETURN_IF_ERROR</a>, <a class="el" href="exec-node_8h_source.html#l00156">impala::ExecNode::row_desc()</a>, <a class="el" href="exec-node_8h_source.html#l00215">impala::ExecNode::row_descriptor_</a>, <a class="el" href="exec-node_8h_source.html#l00225">impala::ExecNode::runtime_profile_</a>, <a class="el" href="runtime-profile_8h_source.html#l00053">SCOPED_TIMER</a>, and <a class="el" href="sort-node_8h_source.html#l00066">sort_exec_exprs_</a>.</p>
</div>
</div>
<a class="anchor" id="ab8f2832c6a5487aa8168b2a7d65773ee"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> impala::ExecNode::QueryMaintenance </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *&#160;</td>
<td class="paramname"><em>state</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Frees any local allocations made by expr_ctxs_to_free_ and returns the result of state-&gt;CheckQueryState(). Nodes should call this periodically, e.g. once per input row batch. This should not be called outside the main execution thread. Nodes may override this to add extra periodic cleanup, e.g. freeing other local allocations. ExecNodes overriding this function should return <a class="el" href="classimpala_1_1ExecNode.html#ab8f2832c6a5487aa8168b2a7d65773ee">ExecNode::QueryMaintenance()</a>. </p>
<p>Reimplemented in <a class="el" href="classimpala_1_1PartitionedAggregationNode.html#a7a5917169ffd6b1888da137c2b0ee783">impala::PartitionedAggregationNode</a>, and <a class="el" href="classimpala_1_1AnalyticEvalNode.html#af15cf540c4d2895f42f6708b83e77de4">impala::AnalyticEvalNode</a>.</p>
<p>Definition at line <a class="el" href="exec-node_8cc_source.html#l00401">401</a> of file <a class="el" href="exec-node_8cc_source.html">exec-node.cc</a>.</p>
<p>References <a class="el" href="runtime-state_8cc_source.html#l00286">impala::RuntimeState::CheckQueryState()</a>, <a class="el" href="exec-node_8h_source.html#l00286">impala::ExecNode::expr_ctxs_to_free_</a>, and <a class="el" href="expr-context_8cc_source.html#l00109">impala::ExprContext::FreeLocalAllocations()</a>.</p>
<p>Referenced by <a class="el" href="cross-join-node_8cc_source.html#l00059">impala::CrossJoinNode::ConstructBuildSide()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00154">impala::HashJoinNode::ConstructBuildSide()</a>, <a class="el" href="select-node_8cc_source.html#l00049">impala::SelectNode::GetNext()</a>, <a class="el" href="sort-node_8cc_source.html#l00078">GetNext()</a>, <a class="el" href="union-node_8cc_source.html#l00119">impala::UnionNode::GetNext()</a>, <a class="el" href="hbase-scan-node_8cc_source.html#l00147">impala::HBaseScanNode::GetNext()</a>, <a class="el" href="topn-node_8cc_source.html#l00106">impala::TopNNode::GetNext()</a>, <a class="el" href="exchange-node_8cc_source.html#l00120">impala::ExchangeNode::GetNext()</a>, <a class="el" href="cross-join-node_8cc_source.html#l00085">impala::CrossJoinNode::GetNext()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00218">impala::HashJoinNode::GetNext()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00230">impala::AggregationNode::GetNext()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00735">impala::PartitionedHashJoinNode::GetNext()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00139">impala::HdfsScanNode::GetNextInternal()</a>, <a class="el" href="hbase-scan-node_8cc_source.html#l00117">impala::HBaseScanNode::Open()</a>, <a class="el" href="sort-node_8cc_source.html#l00051">Open()</a>, <a class="el" href="topn-node_8cc_source.html#l00070">impala::TopNNode::Open()</a>, <a class="el" href="blocking-join-node_8cc_source.html#l00156">impala::BlockingJoinNode::Open()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00174">impala::AggregationNode::Open()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00500">impala::PartitionedHashJoinNode::ProcessBuildInput()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00781">impala::AnalyticEvalNode::QueryMaintenance()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00968">impala::PartitionedAggregationNode::QueryMaintenance()</a>, and <a class="el" href="sort-node_8cc_source.html#l00143">SortInput()</a>.</p>
</div>
</div>
<a class="anchor" id="a3ff26374466bc587eaa4c7d00b3e126a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classbool.html">bool</a> impala::ExecNode::ReachedLimit </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00159">159</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>References <a class="el" href="exec-node_8h_source.html#l00222">impala::ExecNode::limit_</a>, and <a class="el" href="exec-node_8h_source.html#l00223">impala::ExecNode::num_rows_returned_</a>.</p>
<p>Referenced by <a class="el" href="hdfs-parquet-scanner_8cc_source.html#l00805">impala::HdfsParquetScanner::AssembleRows()</a>, <a class="el" href="select-node_8cc_source.html#l00088">impala::SelectNode::CopyRows()</a>, <a class="el" href="union-node_8cc_source.html#l00198">impala::UnionNode::EvalAndMaterializeExprs()</a>, <a class="el" href="hdfs-text-scanner_8cc_source.html#l00253">impala::HdfsTextScanner::FinishScanRange()</a>, <a class="el" href="select-node_8cc_source.html#l00049">impala::SelectNode::GetNext()</a>, <a class="el" href="union-node_8cc_source.html#l00119">impala::UnionNode::GetNext()</a>, <a class="el" href="sort-node_8cc_source.html#l00078">GetNext()</a>, <a class="el" href="hbase-scan-node_8cc_source.html#l00147">impala::HBaseScanNode::GetNext()</a>, <a class="el" href="exchange-node_8cc_source.html#l00120">impala::ExchangeNode::GetNext()</a>, <a class="el" href="cross-join-node_8cc_source.html#l00085">impala::CrossJoinNode::GetNext()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00218">impala::HashJoinNode::GetNext()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00230">impala::AggregationNode::GetNext()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00735">impala::PartitionedHashJoinNode::GetNext()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00696">impala::AnalyticEvalNode::GetNext()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00271">impala::PartitionedAggregationNode::GetNext()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00139">impala::HdfsScanNode::GetNextInternal()</a>, <a class="el" href="exchange-node_8cc_source.html#l00174">impala::ExchangeNode::GetNextMerging()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00634">impala::AnalyticEvalNode::GetNextOutputBatch()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00378">impala::HashJoinNode::LeftJoinGetNext()</a>, <a class="el" href="hdfs-sequence-scanner_8cc_source.html#l00161">impala::HdfsSequenceScanner::ProcessBlockCompressedScanRange()</a>, <a class="el" href="hdfs-text-scanner_8cc_source.html#l00325">impala::HdfsTextScanner::ProcessRange()</a>, <a class="el" href="hdfs-avro-scanner_8cc_source.html#l00517">impala::HdfsAvroScanner::ProcessRange()</a>, <a class="el" href="hdfs-sequence-scanner_8cc_source.html#l00271">impala::HdfsSequenceScanner::ProcessRange()</a>, <a class="el" href="hdfs-rcfile-scanner_8cc_source.html#l00451">impala::HdfsRCFileScanner::ProcessRange()</a>, and <a class="el" href="plan-fragment-executor_8cc_source.html#l00547">impala::PlanFragmentExecutor::ReachedLimit()</a>.</p>
</div>
</div>
<a class="anchor" id="a0ffed0c122ce0f4102da572308365f80"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> impala::SortNode::Reset </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *&#160;</td>
<td class="paramname"><em>state</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Resets all data-specific state, returning this node to the state it was in after calling <a class="el" href="classimpala_1_1SortNode.html#abb55f2bdc41e080a14e5009b3338aed2">Prepare()</a> and before calling <a class="el" href="classimpala_1_1SortNode.html#a6a4e400f5216c5db623dbbaf6e321ed2">Open()</a>. <a class="el" href="classimpala_1_1SortNode.html#abb55f2bdc41e080a14e5009b3338aed2">Prepare()</a> must have already been called before calling <a class="el" href="classimpala_1_1SortNode.html#a0ffed0c122ce0f4102da572308365f80">Reset()</a>. <a class="el" href="classimpala_1_1SortNode.html#a6a4e400f5216c5db623dbbaf6e321ed2">Open()</a> and <a class="el" href="classimpala_1_1SortNode.html#a069f75cb466ea82d7b475163707e7f65">GetNext()</a> may have optionally been called. <a class="el" href="classimpala_1_1SortNode.html#a016c8ab0bfef3279c80eada73a190e66">Close()</a> must not have been called. If overridden in a subclass, must call superclass's <a class="el" href="classimpala_1_1SortNode.html#a0ffed0c122ce0f4102da572308365f80">Reset()</a> at the end. The default implementation calls <a class="el" href="classimpala_1_1SortNode.html#a0ffed0c122ce0f4102da572308365f80">Reset()</a> on children. Note that this function may be called many times, so should be fast. For example, accumulated memory does not need to be freed on every call if it's expensive. </p>
<p>Reimplemented from <a class="el" href="classimpala_1_1ExecNode.html#ad71c699df350036b9df84b9bc19934cd">impala::ExecNode</a>.</p>
<p>Definition at line <a class="el" href="sort-node_8cc_source.html#l00118">118</a> of file <a class="el" href="sort-node_8cc_source.html">sort-node.cc</a>.</p>
</div>
</div>
<a class="anchor" id="a467297b1704ae33db61ae61d3400c35f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classimpala_1_1RowDescriptor.html">RowDescriptor</a>&amp; impala::ExecNode::row_desc </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00156">156</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>References <a class="el" href="exec-node_8h_source.html#l00215">impala::ExecNode::row_descriptor_</a>.</p>
<p>Referenced by <a class="el" href="cross-join-node_8cc_source.html#l00133">impala::CrossJoinNode::BuildListDebugString()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00462">impala::HashJoinNode::CodegenCreateOutputRow()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l01382">impala::PartitionedHashJoinNode::CodegenCreateOutputRow()</a>, <a class="el" href="cross-join-node_8cc_source.html#l00059">impala::CrossJoinNode::ConstructBuildSide()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00154">impala::HashJoinNode::ConstructBuildSide()</a>, <a class="el" href="blocking-join-node_8cc_source.html#l00222">impala::BlockingJoinNode::GetLeftChildRowString()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00218">impala::HashJoinNode::GetNext()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00230">impala::AggregationNode::GetNext()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00634">impala::AnalyticEvalNode::GetNextOutputBatch()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00429">impala::PartitionedAggregationNode::Partition::InitStreams()</a>, <a class="el" href="topn-node_8cc_source.html#l00070">impala::TopNNode::Open()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00174">impala::AggregationNode::Open()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00166">impala::AnalyticEvalNode::Open()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00209">impala::PartitionedAggregationNode::Open()</a>, <a class="el" href="union-node_8cc_source.html#l00107">impala::UnionNode::OpenCurrentChild()</a>, <a class="el" href="select-node_8cc_source.html#l00034">impala::SelectNode::Prepare()</a>, <a class="el" href="sort-node_8cc_source.html#l00042">Prepare()</a>, <a class="el" href="union-node_8cc_source.html#l00058">impala::UnionNode::Prepare()</a>, <a class="el" href="topn-node_8cc_source.html#l00056">impala::TopNNode::Prepare()</a>, <a class="el" href="blocking-join-node_8cc_source.html#l00055">impala::BlockingJoinNode::Prepare()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00080">impala::HashJoinNode::Prepare()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00085">impala::AggregationNode::Prepare()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00124">impala::AnalyticEvalNode::Prepare()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00094">impala::PartitionedHashJoinNode::Prepare()</a>, <a class="el" href="exec-node_8cc_source.html#l00130">impala::ExecNode::Prepare()</a>, <a class="el" href="plan-fragment-executor_8cc_source.html#l00080">impala::PlanFragmentExecutor::Prepare()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00095">impala::PartitionedAggregationNode::Prepare()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00304">impala::HdfsScanNode::Prepare()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00500">impala::PartitionedHashJoinNode::ProcessBuildInput()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00849">impala::PartitionedAggregationNode::ProcessStream()</a>, <a class="el" href="plan-fragment-executor_8cc_source.html#l00539">impala::PlanFragmentExecutor::row_desc()</a>, <a class="el" href="sort-node_8cc_source.html#l00143">SortInput()</a>, and <a class="el" href="hdfs-scanner_8cc_source.html#l00108">impala::HdfsScanner::StartNewRowBatch()</a>.</p>
</div>
</div>
<a class="anchor" id="a3f3a896c7e58304582acd34f662b4c72"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64_t impala::ExecNode::rows_returned </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00157">157</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>References <a class="el" href="exec-node_8h_source.html#l00223">impala::ExecNode::num_rows_returned_</a>.</p>
<p>Referenced by <a class="el" href="cross-join-node_8cc_source.html#l00085">impala::CrossJoinNode::GetNext()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00696">impala::AnalyticEvalNode::GetNext()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00378">impala::HashJoinNode::LeftJoinGetNext()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00209">impala::PartitionedAggregationNode::Open()</a>, <a class="el" href="hdfs-sequence-scanner_8cc_source.html#l00198">impala::HdfsSequenceScanner::ProcessDecompressedBlock()</a>, <a class="el" href="cross-join-node_8cc_source.html#l00142">impala::CrossJoinNode::ProcessLeftChildBatch()</a>, <a class="el" href="hash-join-node-ir_8cc_source.html#l00040">impala::HashJoinNode::ProcessProbeBatch()</a>, and <a class="el" href="hdfs-text-scanner_8cc_source.html#l00663">impala::HdfsTextScanner::WriteFields()</a>.</p>
</div>
</div>
<a class="anchor" id="ad062f28c78add1a869fffdab9419b09d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1RuntimeProfile.html">RuntimeProfile</a>* impala::ExecNode::runtime_profile </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00161">161</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>References <a class="el" href="exec-node_8h_source.html#l00225">impala::ExecNode::runtime_profile_</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00188">impala::ExecNode::AddRuntimeExecOption()</a>, <a class="el" href="blocking-join-node_8cc_source.html#l00136">impala::BlockingJoinNode::BuildSideThread()</a>, <a class="el" href="exec-node_8cc_source.html#l00218">impala::ExecNode::CreateTreeHelper()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00429">impala::PartitionedAggregationNode::Partition::InitStreams()</a>, <a class="el" href="sort-node_8cc_source.html#l00051">Open()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00166">impala::AnalyticEvalNode::Open()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00209">impala::PartitionedAggregationNode::Open()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00511">impala::HdfsScanNode::Open()</a>, <a class="el" href="hdfs-text-scanner_8cc_source.html#l00620">impala::HdfsTextScanner::Prepare()</a>, <a class="el" href="hbase-scan-node_8cc_source.html#l00056">impala::HBaseScanNode::Prepare()</a>, <a class="el" href="base-sequence-scanner_8cc_source.html#l00074">impala::BaseSequenceScanner::Prepare()</a>, <a class="el" href="exchange-node_8cc_source.html#l00061">impala::ExchangeNode::Prepare()</a>, <a class="el" href="hdfs-parquet-scanner_8cc_source.html#l00440">impala::HdfsParquetScanner::Prepare()</a>, <a class="el" href="blocking-join-node_8cc_source.html#l00055">impala::BlockingJoinNode::Prepare()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00080">impala::HashJoinNode::Prepare()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00085">impala::AggregationNode::Prepare()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00124">impala::AnalyticEvalNode::Prepare()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00094">impala::PartitionedHashJoinNode::Prepare()</a>, <a class="el" href="exec-node_8cc_source.html#l00130">impala::ExecNode::Prepare()</a>, <a class="el" href="scan-node_8cc_source.html#l00044">impala::ScanNode::Prepare()</a>, <a class="el" href="plan-fragment-executor_8cc_source.html#l00080">impala::PlanFragmentExecutor::Prepare()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00095">impala::PartitionedAggregationNode::Prepare()</a>, <a class="el" href="hdfs-scanner_8cc_source.html#l00071">impala::HdfsScanner::Prepare()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00304">impala::HdfsScanNode::Prepare()</a>, and <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00500">impala::PartitionedHashJoinNode::ProcessBuildInput()</a>.</p>
</div>
</div>
<a class="anchor" id="a39054faeb49a0adeeabb256106f456af"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void impala::ExecNode::SetDebugOptions </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>node_id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">TExecNodePhase::type&#160;</td>
<td class="paramname"><em>phase</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">TDebugAction::type&#160;</td>
<td class="paramname"><em>action</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a> *&#160;</td>
<td class="paramname"><em>tree</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set debug action for node with given id in 'tree'. </p>
<p>Definition at line <a class="el" href="exec-node_8cc_source.html#l00332">332</a> of file <a class="el" href="exec-node_8cc_source.html">exec-node.cc</a>.</p>
<p>References <a class="el" href="exec-node_8h_source.html#l00214">impala::ExecNode::children_</a>, <a class="el" href="exec-node_8h_source.html#l00220">impala::ExecNode::debug_action_</a>, <a class="el" href="exec-node_8h_source.html#l00219">impala::ExecNode::debug_phase_</a>, and <a class="el" href="exec-node_8h_source.html#l00209">impala::ExecNode::id_</a>.</p>
<p>Referenced by <a class="el" href="plan-fragment-executor_8cc_source.html#l00080">impala::PlanFragmentExecutor::Prepare()</a>.</p>
</div>
</div>
<a class="anchor" id="a4c8c795045b03e53be9127f69954cd32"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> impala::SortNode::SortInput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *&#160;</td>
<td class="paramname"><em>state</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Fetch input rows and feed them to the sorter until the input is exhausted. </p>
<p>Definition at line <a class="el" href="sort-node_8cc_source.html#l00143">143</a> of file <a class="el" href="sort-node_8cc_source.html">sort-node.cc</a>.</p>
<p>References <a class="el" href="runtime-state_8h_source.html#l00098">impala::RuntimeState::batch_size()</a>, <a class="el" href="exec-node_8h_source.html#l00241">impala::ExecNode::child()</a>, <a class="el" href="sort-node_8cc_source.html#l00078">GetNext()</a>, <a class="el" href="exec-node_8h_source.html#l00162">impala::ExecNode::mem_tracker()</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, <a class="el" href="exec-node_8cc_source.html#l00401">impala::ExecNode::QueryMaintenance()</a>, <a class="el" href="row-batch_8cc_source.html#l00224">impala::RowBatch::Reset()</a>, <a class="el" href="runtime-state_8h_source.html#l00384">RETURN_IF_CANCELLED</a>, <a class="el" href="status_8h_source.html#l00242">RETURN_IF_ERROR</a>, <a class="el" href="exec-node_8h_source.html#l00156">impala::ExecNode::row_desc()</a>, and <a class="el" href="sort-node_8h_source.html#l00063">sorter_</a>.</p>
<p>Referenced by <a class="el" href="sort-node_8cc_source.html#l00051">Open()</a>.</p>
</div>
</div>
<a class="anchor" id="aef75c686c9c11e8fcb9b21cfa74c442d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">TPlanNodeType::type impala::ExecNode::type </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00155">155</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>References <a class="el" href="exec-node_8h_source.html#l00210">impala::ExecNode::type_</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00452">impala::ExecNode::CodegenEvalConjuncts()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l01241">impala::PartitionedAggregationNode::CodegenUpdateTuple()</a>, and <a class="el" href="plan-fragment-executor_8cc_source.html#l00080">impala::PlanFragmentExecutor::Prepare()</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="ab5b4aff8e7b124468f2b61ca63b87ab5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;<a class="el" href="classimpala_1_1ExecNode.html">ExecNode</a>*&gt; impala::ExecNode::children_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00214">214</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8h_source.html#l00241">impala::ExecNode::child()</a>, <a class="el" href="exec-node_8cc_source.html#l00166">impala::ExecNode::Close()</a>, <a class="el" href="exec-node_8cc_source.html#l00359">impala::ExecNode::CollectNodes()</a>, <a class="el" href="exec-node_8cc_source.html#l00218">impala::ExecNode::CreateTreeHelper()</a>, <a class="el" href="hbase-scan-node_8cc_source.html#l00294">impala::HBaseScanNode::DebugString()</a>, <a class="el" href="union-node_8cc_source.html#l00119">impala::UnionNode::GetNext()</a>, <a class="el" href="union-node_8cc_source.html#l00088">impala::UnionNode::Open()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00174">impala::AggregationNode::Open()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00209">impala::PartitionedAggregationNode::Open()</a>, <a class="el" href="union-node_8cc_source.html#l00107">impala::UnionNode::OpenCurrentChild()</a>, <a class="el" href="exec-node_8cc_source.html#l00130">impala::ExecNode::Prepare()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00849">impala::PartitionedAggregationNode::ProcessStream()</a>, <a class="el" href="exec-node_8cc_source.html#l00159">impala::ExecNode::Reset()</a>, and <a class="el" href="exec-node_8cc_source.html#l00332">impala::ExecNode::SetDebugOptions()</a>.</p>
</div>
</div>
<a class="anchor" id="a302f24417303ae6eb522e50a15f9ca2c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;<a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a>*&gt; impala::ExecNode::conjunct_ctxs_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00212">212</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00166">impala::ExecNode::Close()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00559">impala::HashJoinNode::CodegenProcessProbeBatch()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l01498">impala::PartitionedHashJoinNode::CodegenProcessProbeBatch()</a>, <a class="el" href="exec-node_8h_source.html#l00152">impala::ExecNode::conjunct_ctxs()</a>, <a class="el" href="select-node_8cc_source.html#l00088">impala::SelectNode::CopyRows()</a>, <a class="el" href="union-node_8cc_source.html#l00198">impala::UnionNode::EvalAndMaterializeExprs()</a>, <a class="el" href="hbase-scan-node_8cc_source.html#l00147">impala::HBaseScanNode::GetNext()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00218">impala::HashJoinNode::GetNext()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00230">impala::AggregationNode::GetNext()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00271">impala::PartitionedAggregationNode::GetNext()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00634">impala::AnalyticEvalNode::GetNextOutputBatch()</a>, <a class="el" href="topn-node_8cc_source.html#l00044">impala::TopNNode::Init()</a>, <a class="el" href="exec-node_8cc_source.html#l00124">impala::ExecNode::Init()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00066">impala::PartitionedHashJoinNode::Init()</a>, <a class="el" href="exec-node_8cc_source.html#l00154">impala::ExecNode::Open()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00865">impala::PartitionedHashJoinNode::OutputUnmatchedBuild()</a>, <a class="el" href="exec-node_8cc_source.html#l00130">impala::ExecNode::Prepare()</a>, <a class="el" href="cross-join-node_8cc_source.html#l00142">impala::CrossJoinNode::ProcessLeftChildBatch()</a>, <a class="el" href="hash-join-node-ir_8cc_source.html#l00040">impala::HashJoinNode::ProcessProbeBatch()</a>, and <a class="el" href="partitioned-hash-join-node-ir_8cc_source.html#l00040">impala::PartitionedHashJoinNode::ProcessProbeBatch()</a>.</p>
</div>
</div>
<a class="anchor" id="a08cd2dfda956999b3995caafe76190fd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">TDebugAction::type impala::ExecNode::debug_action_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00220">220</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00378">impala::ExecNode::ExecDebugAction()</a>, and <a class="el" href="exec-node_8cc_source.html#l00332">impala::ExecNode::SetDebugOptions()</a>.</p>
</div>
</div>
<a class="anchor" id="a76c55d45e1b55f82b83614898240adaf"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">TExecNodePhase::type impala::ExecNode::debug_phase_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>debug-only: if debug_action_ is not INVALID, node will perform action in debug_phase_ </p>
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00219">219</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00378">impala::ExecNode::ExecDebugAction()</a>, and <a class="el" href="exec-node_8cc_source.html#l00332">impala::ExecNode::SetDebugOptions()</a>.</p>
</div>
</div>
<a class="anchor" id="aa536e5c953d915df988c5bcbf24db9f4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">boost::mutex impala::ExecNode::exec_options_lock_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Execution options that are determined at runtime. This is added to the runtime profile at <a class="el" href="classimpala_1_1ExecNode.html#a726e2aca524ace8e4c043377e621285a">Close()</a>. Examples for options logged here would be "Codegen Enabled" </p>
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00238">238</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00188">impala::ExecNode::AddRuntimeExecOption()</a>.</p>
</div>
</div>
<a class="anchor" id="a8574c9973af1609b90cef86ccc331141"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">boost::scoped_ptr&lt;<a class="el" href="classimpala_1_1MemTracker.html">MemTracker</a>&gt; impala::ExecNode::expr_mem_tracker_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><a class="el" href="classimpala_1_1MemTracker.html" title="This class is thread-safe. ">MemTracker</a> that should be used for ExprContexts. </p>
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00233">233</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8h_source.html#l00163">impala::ExecNode::expr_mem_tracker()</a>, and <a class="el" href="exec-node_8cc_source.html#l00130">impala::ExecNode::Prepare()</a>.</p>
</div>
</div>
<a class="anchor" id="a2d543ec055a04199286b52d23a82280f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int impala::ExecNode::id_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00209">209</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00729">impala::PartitionedAggregationNode::CreateHashPartitions()</a>, <a class="el" href="exec-node_8h_source.html#l00154">impala::ExecNode::id()</a>, <a class="el" href="exec-node_8cc_source.html#l00371">impala::ExecNode::InitRuntimeProfile()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00771">impala::PartitionedAggregationNode::NextPartition()</a>, <a class="el" href="exchange-node_8cc_source.html#l00061">impala::ExchangeNode::Prepare()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00661">impala::PartitionedHashJoinNode::PrepareNextPartition()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00500">impala::PartitionedHashJoinNode::ProcessBuildInput()</a>, and <a class="el" href="exec-node_8cc_source.html#l00332">impala::ExecNode::SetDebugOptions()</a>.</p>
</div>
</div>
<a class="anchor" id="acdf6ffbf3d2a4da46a9fa442267e9177"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;<a class="el" href="classbool.html">bool</a>&gt; impala::SortNode::is_asc_order_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="sort-node_8h_source.html#l00067">67</a> of file <a class="el" href="sort-node_8h_source.html">sort-node.h</a>.</p>
<p>Referenced by <a class="el" href="sort-node_8cc_source.html#l00130">DebugString()</a>, <a class="el" href="sort-node_8cc_source.html#l00034">Init()</a>, and <a class="el" href="sort-node_8cc_source.html#l00051">Open()</a>.</p>
</div>
</div>
<a class="anchor" id="ae41f912c39b004f60987b4d480e442b8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64_t impala::ExecNode::limit_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00222">222</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="sort-node_8cc_source.html#l00078">GetNext()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00139">impala::HdfsScanNode::GetNextInternal()</a>, <a class="el" href="exchange-node_8cc_source.html#l00174">impala::ExchangeNode::GetNextMerging()</a>, <a class="el" href="topn-node_8cc_source.html#l00144">impala::TopNNode::InsertTupleRow()</a>, <a class="el" href="hdfs-scan-node_8h_source.html#l00117">impala::HdfsScanNode::limit()</a>, <a class="el" href="exec-node_8h_source.html#l00158">impala::ExecNode::limit()</a>, <a class="el" href="topn-node_8cc_source.html#l00070">impala::TopNNode::Open()</a>, and <a class="el" href="exec-node_8h_source.html#l00159">impala::ExecNode::ReachedLimit()</a>.</p>
</div>
</div>
<a class="anchor" id="aba2362d7d1816b4f90f3e1f6768accd1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">boost::scoped_ptr&lt;<a class="el" href="classimpala_1_1MemTracker.html">MemTracker</a>&gt; impala::ExecNode::mem_tracker_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Account for peak memory used by this node. </p>
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00230">230</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8h_source.html#l00162">impala::ExecNode::mem_tracker()</a>, and <a class="el" href="exec-node_8cc_source.html#l00130">impala::ExecNode::Prepare()</a>.</p>
</div>
</div>
<a class="anchor" id="a675c233454a6c3e6bcfb38206e89dc48"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;<a class="el" href="classbool.html">bool</a>&gt; impala::SortNode::nulls_first_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="sort-node_8h_source.html#l00068">68</a> of file <a class="el" href="sort-node_8h_source.html">sort-node.h</a>.</p>
<p>Referenced by <a class="el" href="sort-node_8cc_source.html#l00130">DebugString()</a>, <a class="el" href="sort-node_8cc_source.html#l00034">Init()</a>, and <a class="el" href="sort-node_8cc_source.html#l00051">Open()</a>.</p>
</div>
</div>
<a class="anchor" id="a9789aeca3e98cda63998a8f47d355fd9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64_t impala::ExecNode::num_rows_returned_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00223">223</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00166">impala::ExecNode::Close()</a>, <a class="el" href="select-node_8cc_source.html#l00088">impala::SelectNode::CopyRows()</a>, <a class="el" href="union-node_8cc_source.html#l00198">impala::UnionNode::EvalAndMaterializeExprs()</a>, <a class="el" href="sort-node_8cc_source.html#l00078">GetNext()</a>, <a class="el" href="hbase-scan-node_8cc_source.html#l00147">impala::HBaseScanNode::GetNext()</a>, <a class="el" href="topn-node_8cc_source.html#l00106">impala::TopNNode::GetNext()</a>, <a class="el" href="exchange-node_8cc_source.html#l00120">impala::ExchangeNode::GetNext()</a>, <a class="el" href="cross-join-node_8cc_source.html#l00085">impala::CrossJoinNode::GetNext()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00218">impala::HashJoinNode::GetNext()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00230">impala::AggregationNode::GetNext()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00735">impala::PartitionedHashJoinNode::GetNext()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00696">impala::AnalyticEvalNode::GetNext()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00271">impala::PartitionedAggregationNode::GetNext()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00139">impala::HdfsScanNode::GetNextInternal()</a>, <a class="el" href="exchange-node_8cc_source.html#l00174">impala::ExchangeNode::GetNextMerging()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00634">impala::AnalyticEvalNode::GetNextOutputBatch()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00378">impala::HashJoinNode::LeftJoinGetNext()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00865">impala::PartitionedHashJoinNode::OutputUnmatchedBuild()</a>, <a class="el" href="exec-node_8h_source.html#l00159">impala::ExecNode::ReachedLimit()</a>, and <a class="el" href="exec-node_8h_source.html#l00157">impala::ExecNode::rows_returned()</a>.</p>
</div>
</div>
<a class="anchor" id="a9bc51307fd35cc0f3801697793bd9e3a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64_t impala::SortNode::num_rows_skipped_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="sort-node_8h_source.html#l00060">60</a> of file <a class="el" href="sort-node_8h_source.html">sort-node.h</a>.</p>
<p>Referenced by <a class="el" href="sort-node_8cc_source.html#l00078">GetNext()</a>.</p>
</div>
</div>
<a class="anchor" id="a1f1cc35f7b9826515e037cc2be747ae8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64_t impala::SortNode::offset_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Number of rows to skip. </p>
<p>Definition at line <a class="el" href="sort-node_8h_source.html#l00059">59</a> of file <a class="el" href="sort-node_8h_source.html">sort-node.h</a>.</p>
<p>Referenced by <a class="el" href="sort-node_8cc_source.html#l00078">GetNext()</a>.</p>
</div>
</div>
<a class="anchor" id="ac55aaa21c7750fd5f8774aee1ac5211a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a>* impala::ExecNode::pool_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00211">211</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="sort-node_8cc_source.html#l00034">Init()</a>, <a class="el" href="union-node_8cc_source.html#l00038">impala::UnionNode::Init()</a>, <a class="el" href="topn-node_8cc_source.html#l00044">impala::TopNNode::Init()</a>, <a class="el" href="exchange-node_8cc_source.html#l00051">impala::ExchangeNode::Init()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00062">impala::HashJoinNode::Init()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00072">impala::AggregationNode::Init()</a>, <a class="el" href="exec-node_8cc_source.html#l00124">impala::ExecNode::Init()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00066">impala::PartitionedHashJoinNode::Init()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00094">impala::AnalyticEvalNode::Init()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00082">impala::PartitionedAggregationNode::Init()</a>, <a class="el" href="exec-node_8cc_source.html#l00371">impala::ExecNode::InitRuntimeProfile()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00511">impala::HdfsScanNode::Open()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00094">impala::PartitionedHashJoinNode::Prepare()</a>, and <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00500">impala::PartitionedHashJoinNode::ProcessBuildInput()</a>.</p>
</div>
</div>
<a class="anchor" id="a900a9e0a75e9839f9c6d4658518944b8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1RowDescriptor.html">RowDescriptor</a> impala::ExecNode::row_descriptor_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00215">215</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="sort-node_8cc_source.html#l00051">Open()</a>, <a class="el" href="sort-node_8cc_source.html#l00042">Prepare()</a>, <a class="el" href="topn-node_8cc_source.html#l00056">impala::TopNNode::Prepare()</a>, <a class="el" href="exchange-node_8cc_source.html#l00061">impala::ExchangeNode::Prepare()</a>, and <a class="el" href="exec-node_8h_source.html#l00156">impala::ExecNode::row_desc()</a>.</p>
</div>
</div>
<a class="anchor" id="a514778516fb852eed80c2e98bf08fac2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const string impala::ExecNode::ROW_THROUGHPUT_COUNTER = &quot;RowsReturnedRate&quot;</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Names of counters shared by all exec nodes. </p>
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00169">169</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00130">impala::ExecNode::Prepare()</a>.</p>
</div>
</div>
<a class="anchor" id="a632a4cdd4c654f362f630936c5ecb29a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1RuntimeProfile_1_1Counter.html">RuntimeProfile::Counter</a>* impala::ExecNode::rows_returned_counter_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00226">226</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00166">impala::ExecNode::Close()</a>, <a class="el" href="select-node_8cc_source.html#l00088">impala::SelectNode::CopyRows()</a>, <a class="el" href="union-node_8cc_source.html#l00198">impala::UnionNode::EvalAndMaterializeExprs()</a>, <a class="el" href="sort-node_8cc_source.html#l00078">GetNext()</a>, <a class="el" href="hbase-scan-node_8cc_source.html#l00147">impala::HBaseScanNode::GetNext()</a>, <a class="el" href="topn-node_8cc_source.html#l00106">impala::TopNNode::GetNext()</a>, <a class="el" href="exchange-node_8cc_source.html#l00120">impala::ExchangeNode::GetNext()</a>, <a class="el" href="cross-join-node_8cc_source.html#l00085">impala::CrossJoinNode::GetNext()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00218">impala::HashJoinNode::GetNext()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00230">impala::AggregationNode::GetNext()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00696">impala::AnalyticEvalNode::GetNext()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00735">impala::PartitionedHashJoinNode::GetNext()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00271">impala::PartitionedAggregationNode::GetNext()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00139">impala::HdfsScanNode::GetNextInternal()</a>, <a class="el" href="exchange-node_8cc_source.html#l00174">impala::ExchangeNode::GetNextMerging()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00378">impala::HashJoinNode::LeftJoinGetNext()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00865">impala::PartitionedHashJoinNode::OutputUnmatchedBuild()</a>, and <a class="el" href="exec-node_8cc_source.html#l00130">impala::ExecNode::Prepare()</a>.</p>
</div>
</div>
<a class="anchor" id="a1fda03b2e215e5fac1352403ae737030"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1RuntimeProfile_1_1Counter.html">RuntimeProfile::Counter</a>* impala::ExecNode::rows_returned_rate_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00227">227</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00130">impala::ExecNode::Prepare()</a>.</p>
</div>
</div>
<a class="anchor" id="a6e72d8a73cfdc5ab09f6bafcca6f8411"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::string impala::ExecNode::runtime_exec_options_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00239">239</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00188">impala::ExecNode::AddRuntimeExecOption()</a>.</p>
</div>
</div>
<a class="anchor" id="a9cab4e45a94527ff97333c0f280036f8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">boost::scoped_ptr&lt;<a class="el" href="classimpala_1_1RuntimeProfile.html">RuntimeProfile</a>&gt; impala::ExecNode::runtime_profile_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00225">225</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="hbase-scan-node_8cc_source.html#l00277">impala::HBaseScanNode::Close()</a>, <a class="el" href="select-node_8cc_source.html#l00049">impala::SelectNode::GetNext()</a>, <a class="el" href="union-node_8cc_source.html#l00119">impala::UnionNode::GetNext()</a>, <a class="el" href="sort-node_8cc_source.html#l00078">GetNext()</a>, <a class="el" href="hbase-scan-node_8cc_source.html#l00147">impala::HBaseScanNode::GetNext()</a>, <a class="el" href="topn-node_8cc_source.html#l00106">impala::TopNNode::GetNext()</a>, <a class="el" href="exchange-node_8cc_source.html#l00120">impala::ExchangeNode::GetNext()</a>, <a class="el" href="cross-join-node_8cc_source.html#l00085">impala::CrossJoinNode::GetNext()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00218">impala::HashJoinNode::GetNext()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00230">impala::AggregationNode::GetNext()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00696">impala::AnalyticEvalNode::GetNext()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00735">impala::PartitionedHashJoinNode::GetNext()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00271">impala::PartitionedAggregationNode::GetNext()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00111">impala::HdfsScanNode::GetNext()</a>, <a class="el" href="exec-node_8cc_source.html#l00371">impala::ExecNode::InitRuntimeProfile()</a>, <a class="el" href="select-node_8cc_source.html#l00042">impala::SelectNode::Open()</a>, <a class="el" href="hbase-scan-node_8cc_source.html#l00117">impala::HBaseScanNode::Open()</a>, <a class="el" href="union-node_8cc_source.html#l00088">impala::UnionNode::Open()</a>, <a class="el" href="sort-node_8cc_source.html#l00051">Open()</a>, <a class="el" href="topn-node_8cc_source.html#l00070">impala::TopNNode::Open()</a>, <a class="el" href="exchange-node_8cc_source.html#l00077">impala::ExchangeNode::Open()</a>, <a class="el" href="data-source-scan-node_8cc_source.html#l00092">impala::DataSourceScanNode::Open()</a>, <a class="el" href="blocking-join-node_8cc_source.html#l00156">impala::BlockingJoinNode::Open()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00174">impala::AggregationNode::Open()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00166">impala::AnalyticEvalNode::Open()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00209">impala::PartitionedAggregationNode::Open()</a>, <a class="el" href="select-node_8cc_source.html#l00034">impala::SelectNode::Prepare()</a>, <a class="el" href="union-node_8cc_source.html#l00058">impala::UnionNode::Prepare()</a>, <a class="el" href="sort-node_8cc_source.html#l00042">Prepare()</a>, <a class="el" href="topn-node_8cc_source.html#l00056">impala::TopNNode::Prepare()</a>, <a class="el" href="blocking-join-node_8cc_source.html#l00055">impala::BlockingJoinNode::Prepare()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00080">impala::HashJoinNode::Prepare()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00085">impala::AggregationNode::Prepare()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00124">impala::AnalyticEvalNode::Prepare()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00094">impala::PartitionedHashJoinNode::Prepare()</a>, <a class="el" href="exec-node_8cc_source.html#l00130">impala::ExecNode::Prepare()</a>, <a class="el" href="scan-node_8cc_source.html#l00044">impala::ScanNode::Prepare()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00095">impala::PartitionedAggregationNode::Prepare()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00304">impala::HdfsScanNode::Prepare()</a>, <a class="el" href="exec-node_8h_source.html#l00161">impala::ExecNode::runtime_profile()</a>, and <a class="el" href="hdfs-scan-node_8cc_source.html#l00982">impala::HdfsScanNode::StopAndFinalizeCounters()</a>.</p>
</div>
</div>
<a class="anchor" id="a3459326503d235d84908ed7b70461cb1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classimpala_1_1SortExecExprs.html">SortExecExprs</a> impala::SortNode::sort_exec_exprs_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Expressions and parameters used for tuple materialization and tuple comparison. </p>
<p>Definition at line <a class="el" href="sort-node_8h_source.html#l00066">66</a> of file <a class="el" href="sort-node_8h_source.html">sort-node.h</a>.</p>
<p>Referenced by <a class="el" href="sort-node_8cc_source.html#l00123">Close()</a>, <a class="el" href="sort-node_8cc_source.html#l00130">DebugString()</a>, <a class="el" href="sort-node_8cc_source.html#l00034">Init()</a>, <a class="el" href="sort-node_8cc_source.html#l00051">Open()</a>, and <a class="el" href="sort-node_8cc_source.html#l00042">Prepare()</a>.</p>
</div>
</div>
<a class="anchor" id="a2b949419606f213525ed1b77501ed42e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">boost::scoped_ptr&lt;<a class="el" href="classimpala_1_1Sorter.html">Sorter</a>&gt; impala::SortNode::sorter_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Object used for external sorting. </p>
<p>Definition at line <a class="el" href="sort-node_8h_source.html#l00063">63</a> of file <a class="el" href="sort-node_8h_source.html">sort-node.h</a>.</p>
<p>Referenced by <a class="el" href="sort-node_8cc_source.html#l00123">Close()</a>, <a class="el" href="sort-node_8cc_source.html#l00078">GetNext()</a>, <a class="el" href="sort-node_8cc_source.html#l00051">Open()</a>, and <a class="el" href="sort-node_8cc_source.html#l00143">SortInput()</a>.</p>
</div>
</div>
<a class="anchor" id="ab86051ba57221a009063eda6e2aefd76"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">TPlanNodeType::type impala::ExecNode::type_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="exec-node_8h_source.html#l00210">210</a> of file <a class="el" href="exec-node_8h_source.html">exec-node.h</a>.</p>
<p>Referenced by <a class="el" href="exec-node_8cc_source.html#l00359">impala::ExecNode::CollectNodes()</a>, and <a class="el" href="exec-node_8h_source.html#l00155">impala::ExecNode::type()</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>be/src/exec/<a class="el" href="sort-node_8h_source.html">sort-node.h</a></li>
<li>be/src/exec/<a class="el" href="sort-node_8cc_source.html">sort-node.cc</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespaceimpala.html">impala</a></li><li class="navelem"><a class="el" href="classimpala_1_1SortNode.html">SortNode</a></li>
<li class="footer">Generated on Thu May 7 2015 16:10:48 for Impala by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 </li>
</ul>
</div>
</body>
</html>