blob: d5db783c33d4ae9763bf97cbe765fc122ab0819d [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::HdfsAvroTableWriter 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_1HdfsAvroTableWriter.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="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="#pro-static-attribs">Static 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_1HdfsAvroTableWriter-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">impala::HdfsAvroTableWriter Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p><code>#include &lt;<a class="el" href="hdfs-avro-table-writer_8h_source.html">hdfs-avro-table-writer.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for impala::HdfsAvroTableWriter:</div>
<div class="dyncontent">
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="classimpala_1_1HdfsAvroTableWriter__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::HdfsAvroTableWriter:</div>
<div class="dyncontent">
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="classimpala_1_1HdfsAvroTableWriter__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:ad9c10300f3a37714b15e830d84ae931a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#ad9c10300f3a37714b15e830d84ae931a">HdfsAvroTableWriter</a> (<a class="el" href="classimpala_1_1HdfsTableSink.html">HdfsTableSink</a> *parent, <a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state, <a class="el" href="structimpala_1_1OutputPartition.html">OutputPartition</a> *output, const <a class="el" href="classimpala_1_1HdfsPartitionDescriptor.html">HdfsPartitionDescriptor</a> *partition, const <a class="el" href="classimpala_1_1HdfsTableDescriptor.html">HdfsTableDescriptor</a> *table_desc, const std::vector&lt; <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * &gt; &amp;output_exprs)</td></tr>
<tr class="separator:ad9c10300f3a37714b15e830d84ae931a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a301955b96e19c3977830f1f02c3b841d"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#a301955b96e19c3977830f1f02c3b841d">~HdfsAvroTableWriter</a> ()</td></tr>
<tr class="separator:a301955b96e19c3977830f1f02c3b841d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aabfe1a564b3b572e12df0b080a5085c3"><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_1HdfsAvroTableWriter.html#aabfe1a564b3b572e12df0b080a5085c3">Init</a> ()</td></tr>
<tr class="memdesc:aabfe1a564b3b572e12df0b080a5085c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Do initialization of writer. <a href="#aabfe1a564b3b572e12df0b080a5085c3">More...</a><br/></td></tr>
<tr class="separator:aabfe1a564b3b572e12df0b080a5085c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08114c59ecaa2564f118c483c6c1dc6e"><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_1HdfsAvroTableWriter.html#a08114c59ecaa2564f118c483c6c1dc6e">Finalize</a> ()</td></tr>
<tr class="separator:a08114c59ecaa2564f118c483c6c1dc6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7089bc8d6f2909754baee11a62dff54a"><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_1HdfsAvroTableWriter.html#a7089bc8d6f2909754baee11a62dff54a">InitNewFile</a> ()</td></tr>
<tr class="memdesc:a7089bc8d6f2909754baee11a62dff54a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called when a new file is started. <a href="#a7089bc8d6f2909754baee11a62dff54a">More...</a><br/></td></tr>
<tr class="separator:a7089bc8d6f2909754baee11a62dff54a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada9d3417d9a27cdb9bb3fa5b65465636"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#ada9d3417d9a27cdb9bb3fa5b65465636">Close</a> ()</td></tr>
<tr class="memdesc:ada9d3417d9a27cdb9bb3fa5b65465636"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called once when this writer should cleanup any resources. <a href="#ada9d3417d9a27cdb9bb3fa5b65465636">More...</a><br/></td></tr>
<tr class="separator:ada9d3417d9a27cdb9bb3fa5b65465636"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a056a4b27561485ac88ea916f48f57532"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classuint64__t.html">uint64_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#a056a4b27561485ac88ea916f48f57532">default_block_size</a> () const </td></tr>
<tr class="separator:a056a4b27561485ac88ea916f48f57532"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a73a1ae1393454cfdba40a32240a28376"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#a73a1ae1393454cfdba40a32240a28376">file_extension</a> () const </td></tr>
<tr class="memdesc:a73a1ae1393454cfdba40a32240a28376"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the file extension for this writer. <a href="#a73a1ae1393454cfdba40a32240a28376">More...</a><br/></td></tr>
<tr class="separator:a73a1ae1393454cfdba40a32240a28376"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8e72ad257c11fd08b3a6b8331d4ca767"><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_1HdfsAvroTableWriter.html#a8e72ad257c11fd08b3a6b8331d4ca767">AppendRowBatch</a> (<a class="el" href="classimpala_1_1RowBatch.html">RowBatch</a> *rows, const std::vector&lt; int32_t &gt; &amp;row_group_indices, <a class="el" href="classbool.html">bool</a> *new_file)</td></tr>
<tr class="separator:a8e72ad257c11fd08b3a6b8331d4ca767"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e207f10cf1bc31d8a8dbe05432461eb"><td class="memItemLeft" align="right" valign="top">TInsertStats &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsTableWriter.html#a7e207f10cf1bc31d8a8dbe05432461eb">stats</a> ()</td></tr>
<tr class="memdesc:a7e207f10cf1bc31d8a8dbe05432461eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the stats for this writer. <a href="#a7e207f10cf1bc31d8a8dbe05432461eb">More...</a><br/></td></tr>
<tr class="separator:a7e207f10cf1bc31d8a8dbe05432461eb"><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:a1be7c5b50e90418d3bc60984a2788179"><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_1HdfsTableWriter.html#a1be7c5b50e90418d3bc60984a2788179">Write</a> (const char *data, int32_t len)</td></tr>
<tr class="memdesc:a1be7c5b50e90418d3bc60984a2788179"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write to the current hdfs file. <a href="#a1be7c5b50e90418d3bc60984a2788179">More...</a><br/></td></tr>
<tr class="separator:a1be7c5b50e90418d3bc60984a2788179"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11edde18e07638fd077e61fd3a3df80e"><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_1HdfsTableWriter.html#a11edde18e07638fd077e61fd3a3df80e">Write</a> (const uint8_t *data, int32_t len)</td></tr>
<tr class="separator:a11edde18e07638fd077e61fd3a3df80e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16139ed71440c10e67c6b291f1800c13"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a16139ed71440c10e67c6b291f1800c13"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1Status.html">Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsTableWriter.html#a16139ed71440c10e67c6b291f1800c13">Write</a> (T v)</td></tr>
<tr class="separator:a16139ed71440c10e67c6b291f1800c13"><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:a7faad5d8d7b9b63df88fc64634e8c68e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1HdfsTableSink.html">HdfsTableSink</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsTableWriter.html#a7faad5d8d7b9b63df88fc64634e8c68e">parent_</a></td></tr>
<tr class="memdesc:a7faad5d8d7b9b63df88fc64634e8c68e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parent table sink object. <a href="#a7faad5d8d7b9b63df88fc64634e8c68e">More...</a><br/></td></tr>
<tr class="separator:a7faad5d8d7b9b63df88fc64634e8c68e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af0582e210619f97f5ac5db62669bbc40"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsTableWriter.html#af0582e210619f97f5ac5db62669bbc40">state_</a></td></tr>
<tr class="memdesc:af0582e210619f97f5ac5db62669bbc40"><td class="mdescLeft">&#160;</td><td class="mdescRight">Runtime state. <a href="#af0582e210619f97f5ac5db62669bbc40">More...</a><br/></td></tr>
<tr class="separator:af0582e210619f97f5ac5db62669bbc40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25eed1b5b3cb444d8bfdc62890238ff7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structimpala_1_1OutputPartition.html">OutputPartition</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsTableWriter.html#a25eed1b5b3cb444d8bfdc62890238ff7">output_</a></td></tr>
<tr class="memdesc:a25eed1b5b3cb444d8bfdc62890238ff7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure describing partition written to by this writer. <a href="#a25eed1b5b3cb444d8bfdc62890238ff7">More...</a><br/></td></tr>
<tr class="separator:a25eed1b5b3cb444d8bfdc62890238ff7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae334368ceff2a98e639a2f249bd97fb4"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classimpala_1_1HdfsTableDescriptor.html">HdfsTableDescriptor</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsTableWriter.html#ae334368ceff2a98e639a2f249bd97fb4">table_desc_</a></td></tr>
<tr class="memdesc:ae334368ceff2a98e639a2f249bd97fb4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Table descriptor of table to be written. <a href="#ae334368ceff2a98e639a2f249bd97fb4">More...</a><br/></td></tr>
<tr class="separator:ae334368ceff2a98e639a2f249bd97fb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3601c468e238682d353bd48a51ba7432"><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_1HdfsTableWriter.html#a3601c468e238682d353bd48a51ba7432">output_expr_ctxs_</a></td></tr>
<tr class="memdesc:a3601c468e238682d353bd48a51ba7432"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expressions that materialize output values. <a href="#a3601c468e238682d353bd48a51ba7432">More...</a><br/></td></tr>
<tr class="separator:a3601c468e238682d353bd48a51ba7432"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a017d589ce2bdcc502582924169f5d2d7"><td class="memItemLeft" align="right" valign="top">TInsertStats&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsTableWriter.html#a017d589ce2bdcc502582924169f5d2d7">stats_</a></td></tr>
<tr class="memdesc:a017d589ce2bdcc502582924169f5d2d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Subclass should populate any file format specific stats. <a href="#a017d589ce2bdcc502582924169f5d2d7">More...</a><br/></td></tr>
<tr class="separator:a017d589ce2bdcc502582924169f5d2d7"><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-attribs"></a>
Static Protected Attributes</h2></td></tr>
<tr class="memitem:a9af768fda419ef64bc60a1afe08d86f4"><td class="memItemLeft" align="right" valign="top">static const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsTableWriter.html#a9af768fda419ef64bc60a1afe08d86f4">HDFS_FLUSH_WRITE_SIZE</a> = 50 * 1024</td></tr>
<tr class="separator:a9af768fda419ef64bc60a1afe08d86f4"><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:a6f8d9006a0c1420e551d08ef3df49835"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#a6f8d9006a0c1420e551d08ef3df49835">ConsumeRow</a> (<a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *row)</td></tr>
<tr class="memdesc:a6f8d9006a0c1420e551d08ef3df49835"><td class="mdescLeft">&#160;</td><td class="mdescRight">Processes a single row, appending to out_. <a href="#a6f8d9006a0c1420e551d08ef3df49835">More...</a><br/></td></tr>
<tr class="separator:a6f8d9006a0c1420e551d08ef3df49835"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8016fdff8e8ed2c92a6accb37dcad469"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#a8016fdff8e8ed2c92a6accb37dcad469">AppendField</a> (const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;type, const void *value)</td></tr>
<tr class="memdesc:a8016fdff8e8ed2c92a6accb37dcad469"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds an encoded field to out_. <a href="#a8016fdff8e8ed2c92a6accb37dcad469">More...</a><br/></td></tr>
<tr class="separator:a8016fdff8e8ed2c92a6accb37dcad469"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a16d737c459e96a93a7bd9b6a9a8bcd"><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_1HdfsAvroTableWriter.html#a4a16d737c459e96a93a7bd9b6a9a8bcd">WriteFileHeader</a> ()</td></tr>
<tr class="memdesc:a4a16d737c459e96a93a7bd9b6a9a8bcd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes the Avro file header to HDFS. <a href="#a4a16d737c459e96a93a7bd9b6a9a8bcd">More...</a><br/></td></tr>
<tr class="separator:a4a16d737c459e96a93a7bd9b6a9a8bcd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb87e9a9f92759ae918e113ca795f327"><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_1HdfsAvroTableWriter.html#acb87e9a9f92759ae918e113ca795f327">Flush</a> ()</td></tr>
<tr class="separator:acb87e9a9f92759ae918e113ca795f327"><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:a1855b5283edfe576a64067ca68b4371b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1WriteStream.html">WriteStream</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#a1855b5283edfe576a64067ca68b4371b">out_</a></td></tr>
<tr class="memdesc:a1855b5283edfe576a64067ca68b4371b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Buffer which holds accumulated output. <a href="#a1855b5283edfe576a64067ca68b4371b">More...</a><br/></td></tr>
<tr class="separator:a1855b5283edfe576a64067ca68b4371b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a208da3abf3c4e1690433ea7027bf8c6e"><td class="memItemLeft" align="right" valign="top">boost::scoped_ptr&lt; <a class="el" href="classimpala_1_1MemPool.html">MemPool</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#a208da3abf3c4e1690433ea7027bf8c6e">mem_pool_</a></td></tr>
<tr class="separator:a208da3abf3c4e1690433ea7027bf8c6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3727da95dc1238af3b9818622f5985f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classuint64__t.html">uint64_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#af3727da95dc1238af3b9818622f5985f">unflushed_rows_</a></td></tr>
<tr class="memdesc:af3727da95dc1238af3b9818622f5985f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of rows consumed since last flush. <a href="#af3727da95dc1238af3b9818622f5985f">More...</a><br/></td></tr>
<tr class="separator:af3727da95dc1238af3b9818622f5985f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a674ad016d4d16faeda985cb2184d63f7"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#a674ad016d4d16faeda985cb2184d63f7">codec_name_</a></td></tr>
<tr class="memdesc:a674ad016d4d16faeda985cb2184d63f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name of codec, only set if codec_type_ != NONE. <a href="#a674ad016d4d16faeda985cb2184d63f7">More...</a><br/></td></tr>
<tr class="separator:a674ad016d4d16faeda985cb2184d63f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a73e0a3ed770c418ff225829d9c7b69a5"><td class="memItemLeft" align="right" valign="top">THdfsCompression::type&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#a73e0a3ed770c418ff225829d9c7b69a5">codec_type_</a></td></tr>
<tr class="memdesc:a73e0a3ed770c418ff225829d9c7b69a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of the codec, will be NONE if no compression is used. <a href="#a73e0a3ed770c418ff225829d9c7b69a5">More...</a><br/></td></tr>
<tr class="separator:a73e0a3ed770c418ff225829d9c7b69a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e898f287abe694dd6aa3ce537a1c5e8"><td class="memItemLeft" align="right" valign="top">boost::scoped_ptr&lt; <a class="el" href="classimpala_1_1Codec.html">Codec</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#a0e898f287abe694dd6aa3ce537a1c5e8">compressor_</a></td></tr>
<tr class="memdesc:a0e898f287abe694dd6aa3ce537a1c5e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">The codec for compressing, only set if codec_type_ != NONE. <a href="#a0e898f287abe694dd6aa3ce537a1c5e8">More...</a><br/></td></tr>
<tr class="separator:a0e898f287abe694dd6aa3ce537a1c5e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b5859d011825f84d0a404fa5817801f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#a0b5859d011825f84d0a404fa5817801f">sync_marker_</a></td></tr>
<tr class="memdesc:a0b5859d011825f84d0a404fa5817801f"><td class="mdescLeft">&#160;</td><td class="mdescRight">16 byte sync marker (a uuid) <a href="#a0b5859d011825f84d0a404fa5817801f">More...</a><br/></td></tr>
<tr class="separator:a0b5859d011825f84d0a404fa5817801f"><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>Consumes rows and outputs the rows into an Avro file in HDFS Each Avro file contains a block of records (rows). The file metadata specifies the schema of the records in addition to the name of the codec, if any, used to compress blocks. The structure is: [ Metadata ] [ Sync Marker ] [ Data Block ] ... [ Data Block ] Each Data Block consists of: [ Number of Rows in Block ] [ Size of serialized objects, after compression ] [ Serialized objects, compressed ] [ Sync Marker ] If compression is used, each block is compressed individually. The block size defaults to about 64KB before compression. This writer implements the Avro 1.7.7 spec: <a href="http://avro.apache.org/docs/1.7.7/spec.html">http://avro.apache.org/docs/1.7.7/spec.html</a> </p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00056">56</a> of file <a class="el" href="hdfs-avro-table-writer_8h_source.html">hdfs-avro-table-writer.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ad9c10300f3a37714b15e830d84ae931a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">HdfsAvroTableWriter::HdfsAvroTableWriter </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1HdfsTableSink.html">HdfsTableSink</a> *&#160;</td>
<td class="paramname"><em>parent</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>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structimpala_1_1OutputPartition.html">OutputPartition</a> *&#160;</td>
<td class="paramname"><em>output</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classimpala_1_1HdfsPartitionDescriptor.html">HdfsPartitionDescriptor</a> *&#160;</td>
<td class="paramname"><em>partition</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classimpala_1_1HdfsTableDescriptor.html">HdfsTableDescriptor</a> *&#160;</td>
<td class="paramname"><em>table_desc</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>output_exprs</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="hdfs-avro-table-writer_8cc_source.html#l00049">49</a> of file <a class="el" href="hdfs-avro-table-writer_8cc_source.html">hdfs-avro-table-writer.cc</a>.</p>
<p>References <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00098">mem_pool_</a>, and <a class="el" href="hdfs-table-sink_8h_source.html#l00149">impala::HdfsTableSink::mem_tracker()</a>.</p>
</div>
</div>
<a class="anchor" id="a301955b96e19c3977830f1f02c3b841d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual impala::HdfsAvroTableWriter::~HdfsAvroTableWriter </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">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00064">64</a> of file <a class="el" href="hdfs-avro-table-writer_8h_source.html">hdfs-avro-table-writer.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a8016fdff8e8ed2c92a6accb37dcad469"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void HdfsAvroTableWriter::AppendField </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;&#160;</td>
<td class="paramname"><em>type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const void *&#160;</td>
<td class="paramname"><em>value</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">inline</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds an encoded field to out_. </p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00068">68</a> of file <a class="el" href="hdfs-avro-table-writer_8cc_source.html">hdfs-avro-table-writer.cc</a>.</p>
<p>References <a class="el" href="bit-util_8h_source.html#l00149">impala::BitUtil::ByteSwap()</a>, <a class="el" href="types_8h_source.html#l00225">impala::ColumnType::GetDecimalByteSize()</a>, <a class="el" href="types_8h_source.html#l00028">impala::INVALID_TYPE</a>, <a class="el" href="string-value_8h_source.html#l00038">impala::StringValue::len</a>, <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00094">out_</a>, <a class="el" href="types_8h_source.html#l00068">impala::ColumnType::precision</a>, <a class="el" href="string-value_8h_source.html#l00037">impala::StringValue::ptr</a>, <a class="el" href="types_8h_source.html#l00060">impala::ColumnType::type</a>, <a class="el" href="types_8h_source.html#l00034">impala::TYPE_BIGINT</a>, <a class="el" href="types_8h_source.html#l00041">impala::TYPE_BINARY</a>, <a class="el" href="types_8h_source.html#l00030">impala::TYPE_BOOLEAN</a>, <a class="el" href="types_8h_source.html#l00039">impala::TYPE_DATE</a>, <a class="el" href="types_8h_source.html#l00040">impala::TYPE_DATETIME</a>, <a class="el" href="types_8h_source.html#l00042">impala::TYPE_DECIMAL</a>, <a class="el" href="types_8h_source.html#l00036">impala::TYPE_DOUBLE</a>, <a class="el" href="types_8h_source.html#l00035">impala::TYPE_FLOAT</a>, <a class="el" href="types_8h_source.html#l00033">impala::TYPE_INT</a>, <a class="el" href="types_8h_source.html#l00029">impala::TYPE_NULL</a>, <a class="el" href="types_8h_source.html#l00032">impala::TYPE_SMALLINT</a>, <a class="el" href="types_8h_source.html#l00038">impala::TYPE_STRING</a>, <a class="el" href="types_8h_source.html#l00037">impala::TYPE_TIMESTAMP</a>, <a class="el" href="types_8h_source.html#l00031">impala::TYPE_TINYINT</a>, <a class="el" href="write-stream_8inline_8h_source.html#l00028">impala::WriteStream::WriteByte()</a>, <a class="el" href="write-stream_8inline_8h_source.html#l00066">impala::WriteStream::WriteBytes()</a>, <a class="el" href="write-stream_8inline_8h_source.html#l00054">impala::WriteStream::WriteZInt()</a>, and <a class="el" href="write-stream_8inline_8h_source.html#l00060">impala::WriteStream::WriteZLong()</a>.</p>
<p>Referenced by <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00058">ConsumeRow()</a>.</p>
</div>
</div>
<a class="anchor" id="a8e72ad257c11fd08b3a6b8331d4ca767"></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> HdfsAvroTableWriter::AppendRowBatch </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1RowBatch.html">RowBatch</a> *&#160;</td>
<td class="paramname"><em>rows</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::vector&lt; int32_t &gt; &amp;&#160;</td>
<td class="paramname"><em>row_group_indices</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>new_file</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>Outputs the given rows into an HDFS sequence file. The rows are buffered to fill a sequence file block. </p>
<p>Implements <a class="el" href="classimpala_1_1HdfsTableWriter.html#a0f7c81b0c79c0637539f459d4c8b17b1">impala::HdfsTableWriter</a>.</p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00168">168</a> of file <a class="el" href="hdfs-avro-table-writer_8cc_source.html">hdfs-avro-table-writer.cc</a>.</p>
<p>References <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00058">ConsumeRow()</a>, <a class="el" href="runtime-profile_8h_source.html#l00055">COUNTER_ADD</a>, <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00047">DEFAULT_AVRO_BLOCK_SIZE</a>, <a class="el" href="hdfs-table-sink_8h_source.html#l00153">impala::HdfsTableSink::encode_timer()</a>, <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00226">Flush()</a>, <a class="el" href="row-batch_8h_source.html#l00140">impala::RowBatch::GetRow()</a>, <a class="el" href="row-batch_8h_source.html#l00215">impala::RowBatch::num_rows()</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00094">out_</a>, <a class="el" href="hdfs-table-writer_8h_source.html#l00112">impala::HdfsTableWriter::parent_</a>, <a class="el" href="hdfs-table-sink_8h_source.html#l00151">impala::HdfsTableSink::rows_inserted_counter()</a>, <a class="el" href="runtime-profile_8h_source.html#l00053">SCOPED_TIMER</a>, and <a class="el" href="write-stream_8inline_8h_source.html#l00096">impala::WriteStream::Size()</a>.</p>
</div>
</div>
<a class="anchor" id="ada9d3417d9a27cdb9bb3fa5b65465636"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void impala::HdfsAvroTableWriter::Close </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">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Called once when this writer should cleanup any resources. </p>
<p>Implements <a class="el" href="classimpala_1_1HdfsTableWriter.html#aa62996db638219ad5499931c5c0d76b2">impala::HdfsTableWriter</a>.</p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00069">69</a> of file <a class="el" href="hdfs-avro-table-writer_8h_source.html">hdfs-avro-table-writer.h</a>.</p>
<p>References <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00098">mem_pool_</a>.</p>
</div>
</div>
<a class="anchor" id="a6f8d9006a0c1420e551d08ef3df49835"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void HdfsAvroTableWriter::ConsumeRow </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *&#160;</td>
<td class="paramname"><em>row</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>Processes a single row, appending to out_. </p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00058">58</a> of file <a class="el" href="hdfs-avro-table-writer_8cc_source.html">hdfs-avro-table-writer.cc</a>.</p>
<p>References <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00068">AppendField()</a>, <a class="el" href="descriptors_8h_source.html#l00153">impala::TableDescriptor::num_clustering_cols()</a>, <a class="el" href="descriptors_8h_source.html#l00152">impala::TableDescriptor::num_cols()</a>, <a class="el" href="hdfs-table-writer_8h_source.html#l00124">impala::HdfsTableWriter::output_expr_ctxs_</a>, <a class="el" href="hdfs-table-writer_8h_source.html#l00121">impala::HdfsTableWriter::table_desc_</a>, and <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00101">unflushed_rows_</a>.</p>
<p>Referenced by <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00168">AppendRowBatch()</a>.</p>
</div>
</div>
<a class="anchor" id="a056a4b27561485ac88ea916f48f57532"></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="classuint64__t.html">uint64_t</a> impala::HdfsAvroTableWriter::default_block_size </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">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Default block size to use for this file format. If the file format doesn't care, it should return 0 and the hdfs config default will be used. </p>
<p>Implements <a class="el" href="classimpala_1_1HdfsTableWriter.html#ade4f9729ae4528ade28bc7fef21cb584">impala::HdfsTableWriter</a>.</p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00070">70</a> of file <a class="el" href="hdfs-avro-table-writer_8h_source.html">hdfs-avro-table-writer.h</a>.</p>
</div>
</div>
<a class="anchor" id="a73a1ae1393454cfdba40a32240a28376"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual std::string impala::HdfsAvroTableWriter::file_extension </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">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the file extension for this writer. </p>
<p>Implements <a class="el" href="classimpala_1_1HdfsTableWriter.html#a806b4c9a4aca2e62061182a379ec09ad">impala::HdfsTableWriter</a>.</p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00071">71</a> of file <a class="el" href="hdfs-avro-table-writer_8h_source.html">hdfs-avro-table-writer.h</a>.</p>
</div>
</div>
<a class="anchor" id="a08114c59ecaa2564f118c483c6c1dc6e"></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="classimpala_1_1Status.html">Status</a> impala::HdfsAvroTableWriter::Finalize </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">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Finalize this partition. The writer needs to finish processing all data have written out after the return from this call. This is called once for each call to <a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#a7089bc8d6f2909754baee11a62dff54a" title="Called when a new file is started. ">InitNewFile()</a> </p>
<p>Implements <a class="el" href="classimpala_1_1HdfsTableWriter.html#a8463934a331263b234ed94e83bc00706">impala::HdfsTableWriter</a>.</p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00067">67</a> of file <a class="el" href="hdfs-avro-table-writer_8h_source.html">hdfs-avro-table-writer.h</a>.</p>
<p>References <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00226">Flush()</a>.</p>
</div>
</div>
<a class="anchor" id="acb87e9a9f92759ae918e113ca795f327"></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> HdfsAvroTableWriter::Flush </td>
<td>(</td>
<td class="paramname"></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>Writes the contents of out_ to HDFS as a single Avro file block. Returns an error if write to HDFS fails. </p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00226">226</a> of file <a class="el" href="hdfs-avro-table-writer_8cc_source.html">hdfs-avro-table-writer.cc</a>.</p>
<p>References <a class="el" href="write-stream_8inline_8h_source.html#l00100">impala::WriteStream::Clear()</a>, <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00107">codec_type_</a>, <a class="el" href="hdfs-table-sink_8h_source.html#l00155">impala::HdfsTableSink::compress_timer()</a>, <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00110">compressor_</a>, <a class="el" href="compress_8cc_source.html#l00273">impala::SnappyCompressor::ComputeChecksum()</a>, <a class="el" href="hdfs-table-sink_8h_source.html#l00154">impala::HdfsTableSink::hdfs_write_timer()</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00094">out_</a>, <a class="el" href="hdfs-table-writer_8h_source.html#l00112">impala::HdfsTableWriter::parent_</a>, <a class="el" href="status_8h_source.html#l00242">RETURN_IF_ERROR</a>, <a class="el" href="runtime-profile_8h_source.html#l00053">SCOPED_TIMER</a>, <a class="el" href="write-stream_8inline_8h_source.html#l00096">impala::WriteStream::Size()</a>, <a class="el" href="write-stream_8inline_8h_source.html#l00092">impala::WriteStream::String()</a>, <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00113">sync_marker_</a>, <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00101">unflushed_rows_</a>, <a class="el" href="hdfs-table-writer_8h_source.html#l00101">impala::HdfsTableWriter::Write()</a>, and <a class="el" href="write-stream_8inline_8h_source.html#l00060">impala::WriteStream::WriteZLong()</a>.</p>
<p>Referenced by <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00168">AppendRowBatch()</a>, and <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00067">Finalize()</a>.</p>
</div>
</div>
<a class="anchor" id="aabfe1a564b3b572e12df0b080a5085c3"></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> HdfsAvroTableWriter::Init </td>
<td>(</td>
<td class="paramname"></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>Do initialization of writer. </p>
<p>The sequence of calls to this object are:</p>
<ol type="1">
<li><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#aabfe1a564b3b572e12df0b080a5085c3" title="Do initialization of writer. ">Init()</a></li>
<li><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#a7089bc8d6f2909754baee11a62dff54a" title="Called when a new file is started. ">InitNewFile()</a></li>
<li><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#a8e72ad257c11fd08b3a6b8331d4ca767">AppendRowBatch()</a> - called repeatedly</li>
<li><a class="el" href="classimpala_1_1HdfsAvroTableWriter.html#a08114c59ecaa2564f118c483c6c1dc6e">Finalize()</a> For files formats that are splittable (and therefore can be written to an arbitrarily large file), 1-4 is called once. For files formats that are not splittable (i.e. columnar formats, compressed text), 1) is called once and 2-4) is called repeatedly for each file. </li>
</ol>
<p>Implements <a class="el" href="classimpala_1_1HdfsTableWriter.html#a4223866d5bb0e90e0b6cd07259e9b55b">impala::HdfsTableWriter</a>.</p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00135">135</a> of file <a class="el" href="hdfs-avro-table-writer_8cc_source.html">hdfs-avro-table-writer.cc</a>.</p>
<p>References <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00044">AVRO_DEFAULT_CODEC</a>, <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00104">codec_name_</a>, <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00107">codec_type_</a>, <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00110">compressor_</a>, <a class="el" href="classimpala_1_1Codec.html#a18854cd2e08266b09600a6e559c7c6e1">impala::Codec::CreateCompressor()</a>, <a class="el" href="uid-util_8h_source.html#l00052">impala::GenerateUUIDString()</a>, <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00098">mem_pool_</a>, <a class="el" href="cpu-info_8cc_source.html#l00050">impala::name</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, <a class="el" href="runtime-state_8h_source.html#l00095">impala::RuntimeState::query_options()</a>, <a class="el" href="status_8h_source.html#l00242">RETURN_IF_ERROR</a>, <a class="el" href="hdfs-table-writer_8h_source.html#l00115">impala::HdfsTableWriter::state_</a>, and <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00113">sync_marker_</a>.</p>
</div>
</div>
<a class="anchor" id="a7089bc8d6f2909754baee11a62dff54a"></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="classimpala_1_1Status.html">Status</a> impala::HdfsAvroTableWriter::InitNewFile </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">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Called when a new file is started. </p>
<p>Implements <a class="el" href="classimpala_1_1HdfsTableWriter.html#a2452ac9ccccb399f1b20df5453d317a9">impala::HdfsTableWriter</a>.</p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00068">68</a> of file <a class="el" href="hdfs-avro-table-writer_8h_source.html">hdfs-avro-table-writer.h</a>.</p>
<p>References <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00193">WriteFileHeader()</a>.</p>
</div>
</div>
<a class="anchor" id="a7e207f10cf1bc31d8a8dbe05432461eb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">TInsertStats&amp; impala::HdfsTableWriter::stats </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>Returns the stats for this writer. </p>
<p>Definition at line <a class="el" href="hdfs-table-writer_8h_source.html#l00086">86</a> of file <a class="el" href="hdfs-table-writer_8h_source.html">hdfs-table-writer.h</a>.</p>
<p>References <a class="el" href="hdfs-table-writer_8h_source.html#l00127">impala::HdfsTableWriter::stats_</a>.</p>
</div>
</div>
<a class="anchor" id="a1be7c5b50e90418d3bc60984a2788179"></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::HdfsTableWriter::Write </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t&#160;</td>
<td class="paramname"><em>len</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">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Write to the current hdfs file. </p>
<p>Definition at line <a class="el" href="hdfs-table-writer_8h_source.html#l00101">101</a> of file <a class="el" href="hdfs-table-writer_8h_source.html">hdfs-table-writer.h</a>.</p>
<p>Referenced by <a class="el" href="hdfs-text-table-writer_8cc_source.html#l00166">impala::HdfsTextTableWriter::Flush()</a>, <a class="el" href="hdfs-sequence-table-writer_8cc_source.html#l00291">impala::HdfsSequenceTableWriter::Flush()</a>, <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00226">Flush()</a>, <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00928">impala::HdfsParquetTableWriter::FlushCurrentRowGroup()</a>, <a class="el" href="hdfs-table-writer_8h_source.html#l00107">impala::HdfsTableWriter::Write()</a>, <a class="el" href="hdfs-sequence-table-writer_8cc_source.html#l00163">impala::HdfsSequenceTableWriter::WriteCompressedBlock()</a>, <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00977">impala::HdfsParquetTableWriter::WriteFileFooter()</a>, <a class="el" href="hdfs-sequence-table-writer_8cc_source.html#l00129">impala::HdfsSequenceTableWriter::WriteFileHeader()</a>, <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00193">WriteFileHeader()</a>, and <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00920">impala::HdfsParquetTableWriter::WriteFileHeader()</a>.</p>
</div>
</div>
<a class="anchor" id="a11edde18e07638fd077e61fd3a3df80e"></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::HdfsTableWriter::Write </td>
<td>(</td>
<td class="paramtype">const uint8_t *&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t&#160;</td>
<td class="paramname"><em>len</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>Definition at line <a class="el" href="hdfs-table-writer_8cc_source.html#l00036">36</a> of file <a class="el" href="hdfs-table-writer_8cc_source.html">hdfs-table-writer.cc</a>.</p>
<p>References <a class="el" href="hdfs-table-sink_8h_source.html#l00152">impala::HdfsTableSink::bytes_written_counter()</a>, <a class="el" href="runtime-profile_8h_source.html#l00055">COUNTER_ADD</a>, <a class="el" href="hdfs-table-sink_8h_source.html#l00055">impala::OutputPartition::current_file_name</a>, <a class="el" href="hdfs-util_8cc_source.html#l00026">impala::GetHdfsErrorMsg()</a>, <a class="el" href="hdfs-table-sink_8h_source.html#l00071">impala::OutputPartition::hdfs_connection</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, <a class="el" href="hdfs-table-writer_8h_source.html#l00118">impala::HdfsTableWriter::output_</a>, <a class="el" href="hdfs-table-writer_8h_source.html#l00112">impala::HdfsTableWriter::parent_</a>, <a class="el" href="hdfs-table-writer_8h_source.html#l00127">impala::HdfsTableWriter::stats_</a>, and <a class="el" href="hdfs-table-sink_8h_source.html#l00074">impala::OutputPartition::tmp_hdfs_file</a>.</p>
</div>
</div>
<a class="anchor" id="a16139ed71440c10e67c6b291f1800c13"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<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::HdfsTableWriter::Write </td>
<td>(</td>
<td class="paramtype">T&#160;</td>
<td class="paramname"><em>v</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="hdfs-table-writer_8h_source.html#l00107">107</a> of file <a class="el" href="hdfs-table-writer_8h_source.html">hdfs-table-writer.h</a>.</p>
<p>References <a class="el" href="hdfs-table-writer_8h_source.html#l00101">impala::HdfsTableWriter::Write()</a>.</p>
</div>
</div>
<a class="anchor" id="a4a16d737c459e96a93a7bd9b6a9a8bcd"></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> HdfsAvroTableWriter::WriteFileHeader </td>
<td>(</td>
<td class="paramname"></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>Writes the Avro file header to HDFS. </p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00193">193</a> of file <a class="el" href="hdfs-avro-table-writer_8cc_source.html">hdfs-avro-table-writer.cc</a>.</p>
<p>References <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00043">AVRO_CODEC_STR</a>, <a class="el" href="descriptors_8h_source.html#l00234">impala::HdfsTableDescriptor::avro_schema()</a>, <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00042">AVRO_SCHEMA_STR</a>, <a class="el" href="write-stream_8inline_8h_source.html#l00100">impala::WriteStream::Clear()</a>, <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00104">codec_name_</a>, <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00041">OBJ1</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00094">out_</a>, <a class="el" href="status_8h_source.html#l00242">RETURN_IF_ERROR</a>, <a class="el" href="write-stream_8inline_8h_source.html#l00092">impala::WriteStream::String()</a>, <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00113">sync_marker_</a>, <a class="el" href="hdfs-table-writer_8h_source.html#l00121">impala::HdfsTableWriter::table_desc_</a>, <a class="el" href="hdfs-table-writer_8h_source.html#l00101">impala::HdfsTableWriter::Write()</a>, <a class="el" href="write-stream_8inline_8h_source.html#l00066">impala::WriteStream::WriteBytes()</a>, and <a class="el" href="write-stream_8inline_8h_source.html#l00060">impala::WriteStream::WriteZLong()</a>.</p>
<p>Referenced by <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00068">InitNewFile()</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="a674ad016d4d16faeda985cb2184d63f7"></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::HdfsAvroTableWriter::codec_name_</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>Name of codec, only set if codec_type_ != NONE. </p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00104">104</a> of file <a class="el" href="hdfs-avro-table-writer_8h_source.html">hdfs-avro-table-writer.h</a>.</p>
<p>Referenced by <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00135">Init()</a>, and <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00193">WriteFileHeader()</a>.</p>
</div>
</div>
<a class="anchor" id="a73e0a3ed770c418ff225829d9c7b69a5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">THdfsCompression::type impala::HdfsAvroTableWriter::codec_type_</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>Type of the codec, will be NONE if no compression is used. </p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00107">107</a> of file <a class="el" href="hdfs-avro-table-writer_8h_source.html">hdfs-avro-table-writer.h</a>.</p>
<p>Referenced by <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00226">Flush()</a>, and <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00135">Init()</a>.</p>
</div>
</div>
<a class="anchor" id="a0e898f287abe694dd6aa3ce537a1c5e8"></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_1Codec.html">Codec</a>&gt; impala::HdfsAvroTableWriter::compressor_</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>The codec for compressing, only set if codec_type_ != NONE. </p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00110">110</a> of file <a class="el" href="hdfs-avro-table-writer_8h_source.html">hdfs-avro-table-writer.h</a>.</p>
<p>Referenced by <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00226">Flush()</a>, and <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00135">Init()</a>.</p>
</div>
</div>
<a class="anchor" id="a9af768fda419ef64bc60a1afe08d86f4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const int impala::HdfsTableWriter::HDFS_FLUSH_WRITE_SIZE = 50 * 1024</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>Size to buffer output before calling <a class="el" href="classimpala_1_1HdfsTableWriter.html#a1be7c5b50e90418d3bc60984a2788179" title="Write to the current hdfs file. ">Write()</a> (which calls hdfsWrite), in bytes to minimize the overhead of <a class="el" href="classimpala_1_1HdfsTableWriter.html#a1be7c5b50e90418d3bc60984a2788179" title="Write to the current hdfs file. ">Write()</a> </p>
<p>Definition at line <a class="el" href="hdfs-table-writer_8h_source.html#l00098">98</a> of file <a class="el" href="hdfs-table-writer_8h_source.html">hdfs-table-writer.h</a>.</p>
<p>Referenced by <a class="el" href="hdfs-text-table-writer_8cc_source.html#l00041">impala::HdfsTextTableWriter::HdfsTextTableWriter()</a>, and <a class="el" href="hdfs-text-table-writer_8cc_source.html#l00059">impala::HdfsTextTableWriter::Init()</a>.</p>
</div>
</div>
<a class="anchor" id="a208da3abf3c4e1690433ea7027bf8c6e"></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_1MemPool.html">MemPool</a>&gt; impala::HdfsAvroTableWriter::mem_pool_</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>Memory pool used by codec to allocate output buffer. Owned by this class. Initialized using parent's memtracker. </p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00098">98</a> of file <a class="el" href="hdfs-avro-table-writer_8h_source.html">hdfs-avro-table-writer.h</a>.</p>
<p>Referenced by <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00069">Close()</a>, <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00049">HdfsAvroTableWriter()</a>, and <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00135">Init()</a>.</p>
</div>
</div>
<a class="anchor" id="a1855b5283edfe576a64067ca68b4371b"></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_1WriteStream.html">WriteStream</a> impala::HdfsAvroTableWriter::out_</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>Buffer which holds accumulated output. </p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00094">94</a> of file <a class="el" href="hdfs-avro-table-writer_8h_source.html">hdfs-avro-table-writer.h</a>.</p>
<p>Referenced by <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00068">AppendField()</a>, <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00168">AppendRowBatch()</a>, <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00226">Flush()</a>, and <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00193">WriteFileHeader()</a>.</p>
</div>
</div>
<a class="anchor" id="a25eed1b5b3cb444d8bfdc62890238ff7"></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="structimpala_1_1OutputPartition.html">OutputPartition</a>* impala::HdfsTableWriter::output_</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>Structure describing partition written to by this writer. </p>
<p>Definition at line <a class="el" href="hdfs-table-writer_8h_source.html#l00118">118</a> of file <a class="el" href="hdfs-table-writer_8h_source.html">hdfs-table-writer.h</a>.</p>
<p>Referenced by <a class="el" href="hdfs-text-table-writer_8cc_source.html#l00096">impala::HdfsTextTableWriter::AppendRowBatch()</a>, <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00862">impala::HdfsParquetTableWriter::AppendRowBatch()</a>, <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00814">impala::HdfsParquetTableWriter::InitNewFile()</a>, and <a class="el" href="hdfs-table-writer_8cc_source.html#l00036">impala::HdfsTableWriter::Write()</a>.</p>
</div>
</div>
<a class="anchor" id="a3601c468e238682d353bd48a51ba7432"></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::HdfsTableWriter::output_expr_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>Expressions that materialize output values. </p>
<p>Definition at line <a class="el" href="hdfs-table-writer_8h_source.html#l00124">124</a> of file <a class="el" href="hdfs-table-writer_8h_source.html">hdfs-table-writer.h</a>.</p>
<p>Referenced by <a class="el" href="hdfs-sequence-table-writer_8cc_source.html#l00090">impala::HdfsSequenceTableWriter::AppendRowBatch()</a>, <a class="el" href="hdfs-text-table-writer_8cc_source.html#l00096">impala::HdfsTextTableWriter::AppendRowBatch()</a>, <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00058">ConsumeRow()</a>, <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00733">impala::HdfsParquetTableWriter::CreateSchema()</a>, <a class="el" href="hdfs-sequence-table-writer_8cc_source.html#l00206">impala::HdfsSequenceTableWriter::EncodeRow()</a>, <a class="el" href="hdfs-table-writer_8cc_source.html#l00021">impala::HdfsTableWriter::HdfsTableWriter()</a>, and <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00635">impala::HdfsParquetTableWriter::Init()</a>.</p>
</div>
</div>
<a class="anchor" id="a7faad5d8d7b9b63df88fc64634e8c68e"></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_1HdfsTableSink.html">HdfsTableSink</a>* impala::HdfsTableWriter::parent_</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>Parent table sink object. </p>
<p>Definition at line <a class="el" href="hdfs-table-writer_8h_source.html#l00112">112</a> of file <a class="el" href="hdfs-table-writer_8h_source.html">hdfs-table-writer.h</a>.</p>
<p>Referenced by <a class="el" href="hdfs-sequence-table-writer_8cc_source.html#l00090">impala::HdfsSequenceTableWriter::AppendRowBatch()</a>, <a class="el" href="hdfs-text-table-writer_8cc_source.html#l00096">impala::HdfsTextTableWriter::AppendRowBatch()</a>, <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00862">impala::HdfsParquetTableWriter::AppendRowBatch()</a>, <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00168">AppendRowBatch()</a>, <a class="el" href="hdfs-text-table-writer_8cc_source.html#l00082">impala::HdfsTextTableWriter::Close()</a>, <a class="el" href="hdfs-sequence-table-writer_8cc_source.html#l00233">impala::HdfsSequenceTableWriter::ConsumeRow()</a>, <a class="el" href="hdfs-sequence-table-writer_8cc_source.html#l00206">impala::HdfsSequenceTableWriter::EncodeRow()</a>, <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00897">impala::HdfsParquetTableWriter::Finalize()</a>, <a class="el" href="hdfs-text-table-writer_8cc_source.html#l00166">impala::HdfsTextTableWriter::Flush()</a>, <a class="el" href="hdfs-sequence-table-writer_8cc_source.html#l00291">impala::HdfsSequenceTableWriter::Flush()</a>, <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00226">Flush()</a>, <a class="el" href="hdfs-table-writer_8cc_source.html#l00021">impala::HdfsTableWriter::HdfsTableWriter()</a>, <a class="el" href="hdfs-text-table-writer_8cc_source.html#l00059">impala::HdfsTextTableWriter::Init()</a>, <a class="el" href="hdfs-table-writer_8cc_source.html#l00036">impala::HdfsTableWriter::Write()</a>, and <a class="el" href="hdfs-sequence-table-writer_8cc_source.html#l00163">impala::HdfsSequenceTableWriter::WriteCompressedBlock()</a>.</p>
</div>
</div>
<a class="anchor" id="af0582e210619f97f5ac5db62669bbc40"></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_1RuntimeState.html">RuntimeState</a>* impala::HdfsTableWriter::state_</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>Runtime state. </p>
<p>Definition at line <a class="el" href="hdfs-table-writer_8h_source.html#l00115">115</a> of file <a class="el" href="hdfs-table-writer_8h_source.html">hdfs-table-writer.h</a>.</p>
<p>Referenced by <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00797">impala::HdfsParquetTableWriter::default_block_size()</a>, <a class="el" href="hdfs-sequence-table-writer_8cc_source.html#l00054">impala::HdfsSequenceTableWriter::Init()</a>, <a class="el" href="hdfs-text-table-writer_8cc_source.html#l00059">impala::HdfsTextTableWriter::Init()</a>, <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00635">impala::HdfsParquetTableWriter::Init()</a>, and <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00135">Init()</a>.</p>
</div>
</div>
<a class="anchor" id="a017d589ce2bdcc502582924169f5d2d7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">TInsertStats impala::HdfsTableWriter::stats_</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>Subclass should populate any file format specific stats. </p>
<p>Definition at line <a class="el" href="hdfs-table-writer_8h_source.html#l00127">127</a> of file <a class="el" href="hdfs-table-writer_8h_source.html">hdfs-table-writer.h</a>.</p>
<p>Referenced by <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00897">impala::HdfsParquetTableWriter::Finalize()</a>, <a class="el" href="hdfs-table-writer_8h_source.html#l00086">impala::HdfsTableWriter::stats()</a>, and <a class="el" href="hdfs-table-writer_8cc_source.html#l00036">impala::HdfsTableWriter::Write()</a>.</p>
</div>
</div>
<a class="anchor" id="a0b5859d011825f84d0a404fa5817801f"></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::HdfsAvroTableWriter::sync_marker_</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>16 byte sync marker (a uuid) </p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00113">113</a> of file <a class="el" href="hdfs-avro-table-writer_8h_source.html">hdfs-avro-table-writer.h</a>.</p>
<p>Referenced by <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00226">Flush()</a>, <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00135">Init()</a>, and <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00193">WriteFileHeader()</a>.</p>
</div>
</div>
<a class="anchor" id="ae334368ceff2a98e639a2f249bd97fb4"></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_1HdfsTableDescriptor.html">HdfsTableDescriptor</a>* impala::HdfsTableWriter::table_desc_</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>Table descriptor of table to be written. </p>
<p>Definition at line <a class="el" href="hdfs-table-writer_8h_source.html#l00121">121</a> of file <a class="el" href="hdfs-table-writer_8h_source.html">hdfs-table-writer.h</a>.</p>
<p>Referenced by <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00766">impala::HdfsParquetTableWriter::AddRowGroup()</a>, <a class="el" href="hdfs-sequence-table-writer_8cc_source.html#l00090">impala::HdfsSequenceTableWriter::AppendRowBatch()</a>, <a class="el" href="hdfs-text-table-writer_8cc_source.html#l00096">impala::HdfsTextTableWriter::AppendRowBatch()</a>, <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00058">ConsumeRow()</a>, <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00733">impala::HdfsParquetTableWriter::CreateSchema()</a>, <a class="el" href="hdfs-sequence-table-writer_8cc_source.html#l00206">impala::HdfsSequenceTableWriter::EncodeRow()</a>, <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00928">impala::HdfsParquetTableWriter::FlushCurrentRowGroup()</a>, <a class="el" href="hdfs-table-writer_8cc_source.html#l00021">impala::HdfsTableWriter::HdfsTableWriter()</a>, <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00635">impala::HdfsParquetTableWriter::Init()</a>, and <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00193">WriteFileHeader()</a>.</p>
</div>
</div>
<a class="anchor" id="af3727da95dc1238af3b9818622f5985f"></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="classuint64__t.html">uint64_t</a> impala::HdfsAvroTableWriter::unflushed_rows_</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 consumed since last flush. </p>
<p>Definition at line <a class="el" href="hdfs-avro-table-writer_8h_source.html#l00101">101</a> of file <a class="el" href="hdfs-avro-table-writer_8h_source.html">hdfs-avro-table-writer.h</a>.</p>
<p>Referenced by <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00058">ConsumeRow()</a>, and <a class="el" href="hdfs-avro-table-writer_8cc_source.html#l00226">Flush()</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="hdfs-avro-table-writer_8h_source.html">hdfs-avro-table-writer.h</a></li>
<li>be/src/exec/<a class="el" href="hdfs-avro-table-writer_8cc_source.html">hdfs-avro-table-writer.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_1HdfsAvroTableWriter.html">HdfsAvroTableWriter</a></li>
<li class="footer">Generated on Thu May 7 2015 16:10:47 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>