<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.19"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Kudu C++ client API: kudu::client::KuduTable 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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></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 id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Kudu C++ client API
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.19 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</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 id="nav-path" class="navpath">
  <ul>
<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classkudu_1_1client_1_1KuduTable-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">kudu::client::KuduTable Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>A representation of a table on a particular cluster.  
 <a href="classkudu_1_1client_1_1KuduTable.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for kudu::client::KuduTable:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classkudu_1_1client_1_1KuduTable.png" alt=""/>
 </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:ae1ada81a49d909fab15694ed3e2f5244"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#ae1ada81a49d909fab15694ed3e2f5244">name</a> () const</td></tr>
<tr class="separator:ae1ada81a49d909fab15694ed3e2f5244"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5436bdd675d45de6c2980f3a05f5e20"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#ac5436bdd675d45de6c2980f3a05f5e20">id</a> () const</td></tr>
<tr class="separator:ac5436bdd675d45de6c2980f3a05f5e20"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aefc75c9c36846675e4b8bd53075f6f5c"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#aefc75c9c36846675e4b8bd53075f6f5c">schema</a> () const</td></tr>
<tr class="separator:aefc75c9c36846675e4b8bd53075f6f5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8f62fdc5c12af06fc9cec0f1d006fed"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#ac8f62fdc5c12af06fc9cec0f1d006fed">num_replicas</a> () const</td></tr>
<tr class="separator:ac8f62fdc5c12af06fc9cec0f1d006fed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58abf46f2fe2cd2adab8c7a872cd0a3d"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a58abf46f2fe2cd2adab8c7a872cd0a3d">owner</a> () const</td></tr>
<tr class="separator:a58abf46f2fe2cd2adab8c7a872cd0a3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0c78f86c5d0fbf53437c2c9db26f92b6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a0c78f86c5d0fbf53437c2c9db26f92b6">NewInsert</a> ()</td></tr>
<tr class="separator:a0c78f86c5d0fbf53437c2c9db26f92b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2cc4b8f9fcbff1450d0a056e8f9a8103"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduInsertIgnore.html">KuduInsertIgnore</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a2cc4b8f9fcbff1450d0a056e8f9a8103">NewInsertIgnore</a> ()</td></tr>
<tr class="separator:a2cc4b8f9fcbff1450d0a056e8f9a8103"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19e92dbaeeff86c5d707b15b2a7051fc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a19e92dbaeeff86c5d707b15b2a7051fc">NewUpsert</a> ()</td></tr>
<tr class="separator:a19e92dbaeeff86c5d707b15b2a7051fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e95271452d608fc2b563f7b46ddcda8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a7e95271452d608fc2b563f7b46ddcda8">NewUpdate</a> ()</td></tr>
<tr class="separator:a7e95271452d608fc2b563f7b46ddcda8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad873078bdbcafe015d359a65c370a89a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#ad873078bdbcafe015d359a65c370a89a">NewDelete</a> ()</td></tr>
<tr class="separator:ad873078bdbcafe015d359a65c370a89a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed6c3571aff35270a3e6cd66770f1cea"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#aed6c3571aff35270a3e6cd66770f1cea">NewComparisonPredicate</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">KuduPredicate::ComparisonOp</a> op, <a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> *value)</td></tr>
<tr class="separator:aed6c3571aff35270a3e6cd66770f1cea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a356e8d0d10491d4d8540adefac86be94"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a356e8d0d10491d4d8540adefac86be94">NewInBloomFilterPredicate</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduBloomFilter.html">KuduBloomFilter</a> * &gt; *bloom_filters)</td></tr>
<tr class="separator:a356e8d0d10491d4d8540adefac86be94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a453ffb83cf7c12541caba5ea182fadd9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a453ffb83cf7c12541caba5ea182fadd9">NewInListPredicate</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> * &gt; *values)</td></tr>
<tr class="separator:a453ffb83cf7c12541caba5ea182fadd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af6e70f115cf3c0359b1c170533a2d523"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#af6e70f115cf3c0359b1c170533a2d523">NewIsNotNullPredicate</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name)</td></tr>
<tr class="separator:af6e70f115cf3c0359b1c170533a2d523"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f453909cdeda167ad15506358470466"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a5f453909cdeda167ad15506358470466">NewIsNullPredicate</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name)</td></tr>
<tr class="separator:a5f453909cdeda167ad15506358470466"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23a66ada3e868985467b2ded94cb24bf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a23a66ada3e868985467b2ded94cb24bf">client</a> () const</td></tr>
<tr class="separator:a23a66ada3e868985467b2ded94cb24bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f3728fb6eab9e1d099f02e378c27af2"><td class="memItemLeft" align="right" valign="top">const PartitionSchema &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a0f3728fb6eab9e1d099f02e378c27af2">partition_schema</a> () const</td></tr>
<tr class="separator:a0f3728fb6eab9e1d099f02e378c27af2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79eae97f8828a50d0d21d85c623bd0ec"><td class="memItemLeft" align="right" valign="top">const std::map&lt; std::string, std::string &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a79eae97f8828a50d0d21d85c623bd0ec">extra_configs</a> () const</td></tr>
<tr class="separator:a79eae97f8828a50d0d21d85c623bd0ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Advanced/Unstable API</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>There are no guarantees on the stability of this client API. </p>
</div></td></tr>
<tr class="memitem:aff0381dcf80981edfa7182618b9fc7a3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#aff0381dcf80981edfa7182618b9fc7a3">NewInBloomFilterPredicate</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, const std::vector&lt; <a class="el" href="classkudu_1_1Slice.html">Slice</a> &gt; &amp;bloom_filters)</td></tr>
<tr class="separator:aff0381dcf80981edfa7182618b9fc7a3"><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>A representation of a table on a particular cluster. </p>
<p>A <a class="el" href="classkudu_1_1client_1_1KuduTable.html" title="A representation of a table on a particular cluster.">KuduTable</a> holds the current schema of the table. Any given <a class="el" href="classkudu_1_1client_1_1KuduTable.html" title="A representation of a table on a particular cluster.">KuduTable</a> object belongs to a specific <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster.">KuduClient</a> object.</p>
<p>Upon construction, the table is looked up in the catalog (or catalog cache), and the schema fetched for introspection.</p>
<p>This class is also a factory for write operation on the table. The provided operations are: </p><ul>
<li>INSERT Adds a new row. Fails if the row already exists. </li>
<li>UPSERT Adds a new row. If there's an existing row, updates it. </li>
<li>UPDATE Updates an existing row. Fails if the row does not exist. </li>
<li>DELETE Deletes an existing row. Fails if the row does not exist.</li>
</ul>
<dl class="section note"><dt>Note</dt><dd>This class is thread-safe. </dd></dl>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a23a66ada3e868985467b2ded94cb24bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a23a66ada3e868985467b2ded94cb24bf">&#9670;&nbsp;</a></span>client()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>* kudu::client::KuduTable::client </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster.">KuduClient</a> object associated with the table. The caller should not free the returned pointer. </dd></dl>

</div>
</div>
<a id="a79eae97f8828a50d0d21d85c623bd0ec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a79eae97f8828a50d0d21d85c623bd0ec">&#9670;&nbsp;</a></span>extra_configs()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const std::map&lt;std::string, std::string&gt;&amp; kudu::client::KuduTable::extra_configs </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The table's extra configuration properties. </dd></dl>

</div>
</div>
<a id="ac5436bdd675d45de6c2980f3a05f5e20"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac5436bdd675d45de6c2980f3a05f5e20">&#9670;&nbsp;</a></span>id()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const std::string&amp; kudu::client::KuduTable::id </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Get the table's ID.</p>
<p>This is an internal identifier which uniquely identifies a table. If the table is deleted and recreated with the same name, the ID will distinguish the old table from the new.</p>
<dl class="section return"><dt>Returns</dt><dd>Identifier string for the table. </dd></dl>

</div>
</div>
<a id="ae1ada81a49d909fab15694ed3e2f5244"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae1ada81a49d909fab15694ed3e2f5244">&#9670;&nbsp;</a></span>name()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const std::string&amp; kudu::client::KuduTable::name </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>Name of the table. </dd></dl>

</div>
</div>
<a id="aed6c3571aff35270a3e6cd66770f1cea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aed6c3571aff35270a3e6cd66770f1cea">&#9670;&nbsp;</a></span>NewComparisonPredicate()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* kudu::client::KuduTable::NewComparisonPredicate </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
          <td class="paramname"><em>col_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">KuduPredicate::ComparisonOp</a>&#160;</td>
          <td class="paramname"><em>op</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> *&#160;</td>
          <td class="paramname"><em>value</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Create a new comparison predicate.</p>
<p>This method creates new instance of a comparison predicate which can be used for scanners on this table object.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of column to use for comparison. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">op</td><td>Comparison operator to use. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>The type of the value must correspond to the type of the column to which the predicate is to be applied. For example, if the given column is any type of integer, the <a class="el" href="classkudu_1_1client_1_1KuduValue.html" title="A constant cell value with a specific type.">KuduValue</a> should also be an integer, with its value in the valid range for the column type. No attempt is made to cast between floating point and integer values, or numeric and string values. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to instance of comparison predicate. The caller owns the result until it is passed into <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">KuduScanner::AddConjunctPredicate()</a>. The returned predicate object takes ownership over the <code>value</code> Non-NULL is returned both in success and error cases. In the case of an error (e.g. invalid column name), a non-NULL value is still returned. The error will be returned when attempting to add this predicate to a <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan.">KuduScanner</a>. </dd></dl>

</div>
</div>
<a id="ad873078bdbcafe015d359a65c370a89a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad873078bdbcafe015d359a65c370a89a">&#9670;&nbsp;</a></span>NewDelete()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a>* kudu::client::KuduTable::NewDelete </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>New <code>DELETE</code> operation for this table. It is the caller's responsibility to free the result, unless it is passed to <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">KuduSession::Apply()</a>. </dd></dl>

</div>
</div>
<a id="aff0381dcf80981edfa7182618b9fc7a3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff0381dcf80981edfa7182618b9fc7a3">&#9670;&nbsp;</a></span>NewInBloomFilterPredicate() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* kudu::client::KuduTable::NewInBloomFilterPredicate </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
          <td class="paramname"><em>col_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::vector&lt; <a class="el" href="classkudu_1_1Slice.html">Slice</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>bloom_filters</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Create a new IN Bloom filter predicate using direct BlockBloomFilter pointers which can be used for scanners on this table.</p>
<p>A Bloom filter is a space-efficient probabilistic data structure used to test set membership with a possibility of false positive matches.</p>
<p>IN list predicate can be used with small number of values; on the other hand with IN Bloom filter predicate large number of values can be tested for membership in a space-efficient manner.</p>
<p>IN Bloom filter predicate may be automatically disabled if determined to be ineffective in filtering rows during scan requests.</p>
<p>Users are expected to perform further filtering to guard against false positives and automatic disablement of an ineffective Bloom filter predicate to get precise set membership information.</p>
<dl class="section warning"><dt>Warning</dt><dd>This method is experimental and may change or disappear in future.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column to which the predicate applies. </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">bloom_filters</td><td>Vector of BlockBloomFilter pointers that contain the values inserted to match against the column. The column value must match against all the supplied Bloom filters to be returned by the scanner. On return, regardless of success or error, the returned predicate will NOT take ownership of the pointers contained in <code>bloom_filters</code> and caller is responsible for the lifecycle management of the Bloom filters. The supplied Bloom filters are expected to remain valid for the lifetime of the <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan.">KuduScanner</a>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to an IN Bloom filter predicate. The caller owns the predicate until it is passed into <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">KuduScanner::AddConjunctPredicate()</a>. In the case of an error (e.g. an invalid column name), a non-NULL value is still returned. The error will be returned when attempting to add this predicate to a <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan.">KuduScanner</a>. </dd></dl>

</div>
</div>
<a id="a356e8d0d10491d4d8540adefac86be94"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a356e8d0d10491d4d8540adefac86be94">&#9670;&nbsp;</a></span>NewInBloomFilterPredicate() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* kudu::client::KuduTable::NewInBloomFilterPredicate </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
          <td class="paramname"><em>col_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduBloomFilter.html">KuduBloomFilter</a> * &gt; *&#160;</td>
          <td class="paramname"><em>bloom_filters</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Create a new IN Bloom filter predicate which can be used for scanners on this table.</p>
<p>A Bloom filter is a space-efficient probabilistic data structure used to test set membership with a possibility of false positive matches. See <code><a class="el" href="classkudu_1_1client_1_1KuduBloomFilter.html" title="Bloom filter to be used with IN Bloom filter predicate.">KuduBloomFilter</a></code> for creating Bloom filters.</p>
<p>IN list predicate can be used with small number of values; on the other hand with IN Bloom filter predicate large number of values can be tested for membership in a space-efficient manner.</p>
<p>IN Bloom filter predicate may be automatically disabled if determined to be ineffective in filtering rows during scan requests.</p>
<p>Users are expected to perform further filtering to guard against false positives and automatic disablement of an ineffective Bloom filter predicate to get precise set membership information.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column to which the predicate applies. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">bloom_filters</td><td>Vector of Bloom filters that contain the values inserted to match against the column. The column value must match against all the supplied Bloom filters to be returned by the scanner. On return, regardless of success or error, the returned predicate will take ownership of the pointers contained in <code>bloom_filters</code>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to an IN Bloom filter predicate. The caller owns the predicate until it is passed into <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">KuduScanner::AddConjunctPredicate()</a>. In the case of an error (e.g. an invalid column name), a non-NULL value is still returned. The error will be returned when attempting to add this predicate to a <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan.">KuduScanner</a>. </dd></dl>

</div>
</div>
<a id="a453ffb83cf7c12541caba5ea182fadd9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a453ffb83cf7c12541caba5ea182fadd9">&#9670;&nbsp;</a></span>NewInListPredicate()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* kudu::client::KuduTable::NewInListPredicate </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
          <td class="paramname"><em>col_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> * &gt; *&#160;</td>
          <td class="paramname"><em>values</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Create a new IN list predicate which can be used for scanners on this table.</p>
<p>The IN list predicate is used to specify a list of values that a column must match. A row is filtered from the scan if the value of the column does not equal any value from the list.</p>
<p>The type of entries in the list must correspond to the type of the column to which the predicate is to be applied. For example, if the given column is any type of integer, the KuduValues should also be integers, with the values in the valid range for the column type. No attempt is made to cast between floating point and integer values, or numeric and string values.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column to which the predicate applies. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">values</td><td>Vector of values which the column will be matched against. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to an IN list predicate. The caller owns the predicate until it is passed into <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">KuduScanner::AddConjunctPredicate()</a>. The returned predicate takes ownership of the values vector and its elements. In the case of an error (e.g. an invalid column name), a non-NULL value is still returned. The error will be returned when attempting to add this predicate to a <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan.">KuduScanner</a>. </dd></dl>

</div>
</div>
<a id="a0c78f86c5d0fbf53437c2c9db26f92b6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0c78f86c5d0fbf53437c2c9db26f92b6">&#9670;&nbsp;</a></span>NewInsert()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a>* kudu::client::KuduTable::NewInsert </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>New <code>INSERT</code> operation for this table. It is the caller's responsibility to free the result, unless it is passed to <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">KuduSession::Apply()</a>. </dd></dl>

</div>
</div>
<a id="a2cc4b8f9fcbff1450d0a056e8f9a8103"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2cc4b8f9fcbff1450d0a056e8f9a8103">&#9670;&nbsp;</a></span>NewInsertIgnore()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduInsertIgnore.html">KuduInsertIgnore</a>* kudu::client::KuduTable::NewInsertIgnore </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>New <code>INSERT_IGNORE</code> operation for this table. It is the caller's responsibility to free the result, unless it is passed to <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">KuduSession::Apply()</a>. </dd></dl>

</div>
</div>
<a id="af6e70f115cf3c0359b1c170533a2d523"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af6e70f115cf3c0359b1c170533a2d523">&#9670;&nbsp;</a></span>NewIsNotNullPredicate()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* kudu::client::KuduTable::NewIsNotNullPredicate </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
          <td class="paramname"><em>col_name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Create a new IS NOT NULL predicate which can be used for scanners on this table.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column to which the predicate applies </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to an IS NOT NULL predicate. The caller owns the predicate until it is passed into <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">KuduScanner::AddConjunctPredicate()</a>. In the case of an error (e.g. an invalid column name), a non-NULL value is still returned. The error will be returned when attempting to add this predicate to a <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan.">KuduScanner</a>. </dd></dl>

</div>
</div>
<a id="a5f453909cdeda167ad15506358470466"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5f453909cdeda167ad15506358470466">&#9670;&nbsp;</a></span>NewIsNullPredicate()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* kudu::client::KuduTable::NewIsNullPredicate </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
          <td class="paramname"><em>col_name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Create a new IS NULL predicate which can be used for scanners on this table.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column to which the predicate applies </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to an IS NULL predicate. The caller owns the predicate until it is passed into <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">KuduScanner::AddConjunctPredicate()</a>. In the case of an error (e.g. an invalid column name), a non-NULL value is still returned. The error will be returned when attempting to add this predicate to a <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan.">KuduScanner</a>. </dd></dl>

</div>
</div>
<a id="a7e95271452d608fc2b563f7b46ddcda8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7e95271452d608fc2b563f7b46ddcda8">&#9670;&nbsp;</a></span>NewUpdate()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a>* kudu::client::KuduTable::NewUpdate </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>New <code>UPDATE</code> operation for this table. It is the caller's responsibility to free the result, unless it is passed to <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">KuduSession::Apply()</a>. </dd></dl>

</div>
</div>
<a id="a19e92dbaeeff86c5d707b15b2a7051fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a19e92dbaeeff86c5d707b15b2a7051fc">&#9670;&nbsp;</a></span>NewUpsert()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a>* kudu::client::KuduTable::NewUpsert </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>New <code>UPSERT</code> operation for this table. It is the caller's responsibility to free the result, unless it is passed to <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">KuduSession::Apply()</a>. </dd></dl>

</div>
</div>
<a id="ac8f62fdc5c12af06fc9cec0f1d006fed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac8f62fdc5c12af06fc9cec0f1d006fed">&#9670;&nbsp;</a></span>num_replicas()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int kudu::client::KuduTable::num_replicas </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>Replication factor of the table. </dd></dl>

</div>
</div>
<a id="a58abf46f2fe2cd2adab8c7a872cd0a3d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a58abf46f2fe2cd2adab8c7a872cd0a3d">&#9670;&nbsp;</a></span>owner()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const std::string&amp; kudu::client::KuduTable::owner </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>Owner of the table (empty string if unset). </dd></dl>

</div>
</div>
<a id="a0f3728fb6eab9e1d099f02e378c27af2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0f3728fb6eab9e1d099f02e378c27af2">&#9670;&nbsp;</a></span>partition_schema()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const PartitionSchema&amp; kudu::client::KuduTable::partition_schema </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The partition schema for the table. </dd></dl>

</div>
</div>
<a id="aefc75c9c36846675e4b8bd53075f6f5c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aefc75c9c36846675e4b8bd53075f6f5c">&#9670;&nbsp;</a></span>schema()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; kudu::client::KuduTable::schema </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>Reference to the table's schema object. </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/>
<address class="footer">
  <small>Generated for Kudu version 1.13.0 on Fri Sep 18 2020 15:03:20 by Doxygen 1.8.19</small>
  <br>
  <small>Copyright © 2020 The Apache Software Foundation.</small>
</address>
</body>
</html>
