<!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:a4f24cd5f89f247933976076fbeafec9b"><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#a4f24cd5f89f247933976076fbeafec9b">comment</a> () const</td></tr>
<tr class="separator:a4f24cd5f89f247933976076fbeafec9b"><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:abf0432f09886b3df1ab64c61227f4bf3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduUpdateIgnore.html">KuduUpdateIgnore</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#abf0432f09886b3df1ab64c61227f4bf3">NewUpdateIgnore</a> ()</td></tr>
<tr class="separator:abf0432f09886b3df1ab64c61227f4bf3"><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:aab4f670329e21099dadafa574c4ad094"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduDeleteIgnore.html">KuduDeleteIgnore</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#aab4f670329e21099dadafa574c4ad094">NewDeleteIgnore</a> ()</td></tr>
<tr class="separator:aab4f670329e21099dadafa574c4ad094"><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="a4f24cd5f89f247933976076fbeafec9b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4f24cd5f89f247933976076fbeafec9b">&#9670;&nbsp;</a></span>comment()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const std::string&amp; kudu::client::KuduTable::comment </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>Comment string for the table. </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="aab4f670329e21099dadafa574c4ad094"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aab4f670329e21099dadafa574c4ad094">&#9670;&nbsp;</a></span>NewDeleteIgnore()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduDeleteIgnore.html">KuduDeleteIgnore</a>* kudu::client::KuduTable::NewDeleteIgnore </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_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="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="abf0432f09886b3df1ab64c61227f4bf3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abf0432f09886b3df1ab64c61227f4bf3">&#9670;&nbsp;</a></span>NewUpdateIgnore()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduUpdateIgnore.html">KuduUpdateIgnore</a>* kudu::client::KuduTable::NewUpdateIgnore </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_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="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.16.0 on Tue Apr 12 2022 16:34:46 by Doxygen 1.8.19</small>
  <br>
  <small>Copyright © 2022 The Apache Software Foundation.</small>
</address>
</body>
</html>
