<!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.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Kudu C++ client API: kudu::client::KuduClient 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.9.1 -->
<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','.html');
/* @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_1KuduClient.html">KuduClient</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-attribs">Static Public Attributes</a> &#124;
<a href="classkudu_1_1client_1_1KuduClient-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">kudu::client::KuduClient Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>A handle for a connection to a cluster.  
 <a href="classkudu_1_1client_1_1KuduClient.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::KuduClient:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classkudu_1_1client_1_1KuduClient.png" alt=""/>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:aef70c7f3a596ecda4040f9d46514b11a"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">ReplicaSelection</a> { <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239">LEADER_ONLY</a>
, <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aa801886067da41dacd0c9c2b8091f08d8">CLOSEST_REPLICA</a>
, <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aaa060fb6126a3e3fa80079f885dc7d48f">FIRST_REPLICA</a>
 }</td></tr>
<tr class="memdesc:aef70c7f3a596ecda4040f9d46514b11a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Policy with which to choose amongst multiple replicas.  <a href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">More...</a><br /></td></tr>
<tr class="separator:aef70c7f3a596ecda4040f9d46514b11a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><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:a003f13604b4fb378f61e133a9b49d153"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a003f13604b4fb378f61e133a9b49d153">NewTableCreator</a> ()</td></tr>
<tr class="separator:a003f13604b4fb378f61e133a9b49d153"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f0323b439d8658b2ac31fde7f46de63"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2f0323b439d8658b2ac31fde7f46de63">IsCreateTableInProgress</a> (const std::string &amp;table_name, bool *create_in_progress)</td></tr>
<tr class="separator:a2f0323b439d8658b2ac31fde7f46de63"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d7cbad036bc74c71873a428abce5c1d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a9d7cbad036bc74c71873a428abce5c1d">DeleteTable</a> (const std::string &amp;table_name)</td></tr>
<tr class="separator:a9d7cbad036bc74c71873a428abce5c1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a116bbcf13dc0991ad2a3129630075aea"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a116bbcf13dc0991ad2a3129630075aea">NewTableAlterer</a> (const std::string &amp;table_name)</td></tr>
<tr class="separator:a116bbcf13dc0991ad2a3129630075aea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a331e528759296089837b4611c01809"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a7a331e528759296089837b4611c01809">IsAlterTableInProgress</a> (const std::string &amp;table_name, bool *alter_in_progress)</td></tr>
<tr class="separator:a7a331e528759296089837b4611c01809"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2aa649e05e0cfb0e10ebce98fb4d7a65"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2aa649e05e0cfb0e10ebce98fb4d7a65">GetTableSchema</a> (const std::string &amp;table_name, <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> *schema)</td></tr>
<tr class="separator:a2aa649e05e0cfb0e10ebce98fb4d7a65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae283a49551a081524b41f5d8e51e68d9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#ae283a49551a081524b41f5d8e51e68d9">ListTabletServers</a> (std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a> * &gt; *tablet_servers)</td></tr>
<tr class="separator:ae283a49551a081524b41f5d8e51e68d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ab09f69753b8c99ac7b2eeed03faa1d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a3ab09f69753b8c99ac7b2eeed03faa1d">ListTables</a> (std::vector&lt; std::string &gt; *tables, const std::string &amp;filter=&quot;&quot;)</td></tr>
<tr class="separator:a3ab09f69753b8c99ac7b2eeed03faa1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96e9a6c0a16a8825c291528ac27af818"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a96e9a6c0a16a8825c291528ac27af818">TableExists</a> (const std::string &amp;table_name, bool *exists)</td></tr>
<tr class="separator:a96e9a6c0a16a8825c291528ac27af818"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa82a09718ffe68d3255195e736aec8d7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aa82a09718ffe68d3255195e736aec8d7">OpenTable</a> (const std::string &amp;table_name, sp::shared_ptr&lt; <a class="el" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a> &gt; *table)</td></tr>
<tr class="separator:aa82a09718ffe68d3255195e736aec8d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f5b9bf8767b44f03f4d3220dfd5f925"><td class="memItemLeft" align="right" valign="top">sp::shared_ptr&lt; <a class="el" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a1f5b9bf8767b44f03f4d3220dfd5f925">NewSession</a> ()</td></tr>
<tr class="separator:a1f5b9bf8767b44f03f4d3220dfd5f925"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acce5fd87acb241d2ce2686545f423345"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#acce5fd87acb241d2ce2686545f423345">NewTransaction</a> (sp::shared_ptr&lt; <a class="el" href="classkudu_1_1client_1_1KuduTransaction.html">KuduTransaction</a> &gt; *txn) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:acce5fd87acb241d2ce2686545f423345"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e1363d5dfab959b0d9ca98bfd390433"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a1e1363d5dfab959b0d9ca98bfd390433">IsMultiMaster</a> () const</td></tr>
<tr class="separator:a1e1363d5dfab959b0d9ca98bfd390433"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0646b1b93edeb92cf7ea46a1bb433838"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a0646b1b93edeb92cf7ea46a1bb433838">default_admin_operation_timeout</a> () const</td></tr>
<tr class="separator:a0646b1b93edeb92cf7ea46a1bb433838"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaae3d73831a41d260d2578fef68bcd49"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aaae3d73831a41d260d2578fef68bcd49">default_rpc_timeout</a> () const</td></tr>
<tr class="separator:aaae3d73831a41d260d2578fef68bcd49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a68b569dd6749ec61805e3b0a691eacac"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a68b569dd6749ec61805e3b0a691eacac">connection_negotiation_timeout</a> () const</td></tr>
<tr class="separator:a68b569dd6749ec61805e3b0a691eacac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4af2abf2a56d92d8795662fa090baa9"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aa4af2abf2a56d92d8795662fa090baa9">GetLatestObservedTimestamp</a> () const</td></tr>
<tr class="separator:aa4af2abf2a56d92d8795662fa090baa9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0809b055eda76fd68988462f2a9791dd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a0809b055eda76fd68988462f2a9791dd">SetLatestObservedTimestamp</a> (uint64_t ht_timestamp)</td></tr>
<tr class="separator:a0809b055eda76fd68988462f2a9791dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae932971967e58a8a7b85f6a56ee44cd0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#ae932971967e58a8a7b85f6a56ee44cd0">ExportAuthenticationCredentials</a> (std::string *authn_creds) const</td></tr>
<tr class="separator:ae932971967e58a8a7b85f6a56ee44cd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr class="memitem:a196f1a18c000cdca309d05161caaddaa"><td class="memItemLeft" align="right" valign="top">static const uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa">kNoTimestamp</a></td></tr>
<tr class="separator:a196f1a18c000cdca309d05161caaddaa"><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 handle for a connection to a cluster. </p>
<p>The <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster.">KuduClient</a> class represents a connection to a cluster. From the user perspective, they should only need to create one of these in their application, likely a singleton &ndash; but it is not a singleton in Kudu in any way. Different <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster.">KuduClient</a> objects do not interact with each other &ndash; no connection pooling, etc. With the exception of common properties managed by free (non-member) functions in the kudu::client namespace, each <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster.">KuduClient</a> object is sandboxed with no global cross-client state.</p>
<p>In the implementation, the client holds various pieces of common infrastructure which is not table-specific: </p><ul>
<li>RPC messenger: reactor threads and RPC connections are pooled here </li>
<li>Authentication: the client is initialized with some credentials, and all accesses through it share those credentials. </li>
<li>Caches: caches of table schemas, tablet locations, tablet server IP addresses, etc are shared per-client.</li>
</ul>
<p>In order to actually write data to the cluster, callers must first create a <a class="el" href="classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session.">KuduSession</a> object using <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a1f5b9bf8767b44f03f4d3220dfd5f925">NewSession()</a>. A <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster.">KuduClient</a> may have several associated sessions.</p>
<dl class="section note"><dt>Note</dt><dd>This class is thread-safe.</dd></dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000001">Todo:</a></b></dt><dd>Cluster administration functions are likely to be in this class as well. </dd></dl>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a id="aef70c7f3a596ecda4040f9d46514b11a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aef70c7f3a596ecda4040f9d46514b11a">&#9670;&nbsp;</a></span>ReplicaSelection</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">kudu::client::KuduClient::ReplicaSelection</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Policy with which to choose amongst multiple replicas. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239"></a>LEADER_ONLY&#160;</td><td class="fielddoc"><p>Select the LEADER replica. </p>
</td></tr>
<tr><td class="fieldname"><a id="aef70c7f3a596ecda4040f9d46514b11aa801886067da41dacd0c9c2b8091f08d8"></a>CLOSEST_REPLICA&#160;</td><td class="fielddoc"><p>Select the closest replica to the client. Local replicas are considered the closest, followed by replicas in the same location as the client, followed by all other replicas. If there are multiple closest replicas, one is chosen randomly. </p>
</td></tr>
<tr><td class="fieldname"><a id="aef70c7f3a596ecda4040f9d46514b11aaa060fb6126a3e3fa80079f885dc7d48f"></a>FIRST_REPLICA&#160;</td><td class="fielddoc"><p>Select the first replica in the list. </p>
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a68b569dd6749ec61805e3b0a691eacac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a68b569dd6749ec61805e3b0a691eacac">&#9670;&nbsp;</a></span>connection_negotiation_timeout()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> kudu::client::KuduClient::connection_negotiation_timeout </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>Timeout for connection negotiation to a remote server. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&amp; kudu::client::KuduClient::default_admin_operation_timeout </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>Default timeout for admin operations. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&amp; kudu::client::KuduClient::default_rpc_timeout </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>Default timeout for RPCs. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::DeleteTable </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>table_name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Delete/drop a table.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">table_name</td><td>Name of the table to drop. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation status. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::ExportAuthenticationCredentials </td>
          <td>(</td>
          <td class="paramtype">std::string *&#160;</td>
          <td class="paramname"><em>authn_creds</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Export the current authentication credentials from this client. This includes the necessary credentials to authenticate to the cluster, as well as to authenticate the cluster to the client.</p>
<p>The resulting binary string may be passed into a new C++ client via the <code><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a5c411bc4638cbf77e5d318f5049b0b7e">KuduClientBuilder::import_authentication_credentials</a></code> method, or into a new Java client via <code>KuduClient::importAuthenticationCredentials</code>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">authn_creds</td><td>The resulting binary authentication credentials. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome.">Status</a> object for the operation. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint64_t kudu::client::KuduClient::GetLatestObservedTimestamp </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Get the highest HybridTime timestamp observed by the client.</p>
<p>This is useful when retrieving timestamp from one client and forwarding it to another to enforce external consistency when using <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c">KuduSession::CLIENT_PROPAGATED</a> external consistency mode.</p>
<dl class="section note"><dt>Note</dt><dd>This method is experimental and will either disappear or change in a future release.</dd></dl>
<dl class="section return"><dt>Returns</dt><dd>Highest HybridTime timestamp observed by the client. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::GetTableSchema </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>table_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> *&#160;</td>
          <td class="paramname"><em>schema</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Get table's schema.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">table_name</td><td>Name of the table. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">schema</td><td>Raw pointer to the schema object; caller gets ownership. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation status. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::IsAlterTableInProgress </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>table_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool *&#160;</td>
          <td class="paramname"><em>alter_in_progress</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Check if table alteration is in-progress.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">table_name</td><td>Name of the table. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">alter_in_progress</td><td>The value is set only in case of success; it is <code>true</code> iff the operation is in progress. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation status. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::IsCreateTableInProgress </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>table_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool *&#160;</td>
          <td class="paramname"><em>create_in_progress</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Check whether a create table operation is in-progress.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">table_name</td><td>Name of the table. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">create_in_progress</td><td>The value is set only in case of success; it is <code>true</code> iff the operation is in progress. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation status. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool kudu::client::KuduClient::IsMultiMaster </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><code>true</code> iff client is configured to talk to multiple Kudu master servers. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::ListTables </td>
          <td>(</td>
          <td class="paramtype">std::vector&lt; std::string &gt; *&#160;</td>
          <td class="paramname"><em>tables</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>filter</em> = <code>&quot;&quot;</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>List only those tables whose names pass a substring match on <code>filter</code>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">tables</td><td>The placeholder for the result. Appended only on success. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">filter</td><td>Substring filter to use; empty sub-string filter matches all tables. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome.">Status</a> object for the operation. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::ListTabletServers </td>
          <td>(</td>
          <td class="paramtype">std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a> * &gt; *&#160;</td>
          <td class="paramname"><em>tablet_servers</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Get information on current tablet servers.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">tablet_servers</td><td>The placeholder for the result. The caller takes ownership of the container's elements. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation status. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">sp::shared_ptr&lt;<a class="el" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a>&gt; kudu::client::KuduClient::NewSession </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Create a new session for interacting with the cluster.</p>
<p>This is a fully local operation (no RPCs or blocking).</p>
<dl class="section return"><dt>Returns</dt><dd>A new session object; caller is responsible for destroying it. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* kudu::client::KuduClient::NewTableAlterer </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>table_name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Create a <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html" title="Alters an existing table based on the provided steps.">KuduTableAlterer</a> object.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">table_name</td><td>Name of the table to alter. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to newly created object: it is the caller's responsibility to free it. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>* kudu::client::KuduClient::NewTableCreator </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Create a <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html" title="A helper class to create a new table with the desired options.">KuduTableCreator</a> object.</p>
<dl class="section return"><dt>Returns</dt><dd>Pointer to newly created object; it is the caller's responsibility to free it. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::NewTransaction </td>
          <td>(</td>
          <td class="paramtype">sp::shared_ptr&lt; <a class="el" href="classkudu_1_1client_1_1KuduTransaction.html">KuduTransaction</a> &gt; *&#160;</td>
          <td class="paramname"><em>txn</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Start a multi-row transaction.</p>
<p>This method results in an RPC sent to a Kudu cluster to begin a multi-row distributed transaction. In case of success, the resulting transaction handle is output into the 'txn' parameter. That handle can be used to create a new <code><a class="el" href="classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session.">KuduSession</a></code> using the <code>NewSession(const sp::shared_ptr&lt;KuduSession&gt;&amp;)</code> method. To commit or rollback all single-row write operations performed in the context of the newly created transaction, use <code><a class="el" href="classkudu_1_1client_1_1KuduTransaction.html#aaf0b693b1ff9a44399bea3ed1f22f495">KuduTransaction::Commit()</a></code> and <code><a class="el" href="classkudu_1_1client_1_1KuduTransaction.html#a68b5c532b44f84beabe7ae7ca46889f8">KuduTransaction::Rollback()</a></code> methods correspondingly.</p>
<dl class="section note"><dt>Note</dt><dd>The newly created object starts sending keep-alive messages for the newly opened transaction as required by the keep-alive interval assigned to the transaction by the system. To keep the heartbeating, the newly created <code><a class="el" href="classkudu_1_1client_1_1KuduTransaction.html">KuduTransaction</a></code> should be kept in scope.</dd></dl>
<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="paramname">txn</td><td>[out] The resulting <code><a class="el" href="classkudu_1_1client_1_1KuduTransaction.html">KuduTransaction</a></code> object wrapped into a smart pointer. This 'out' parameter is populated iff the operation to begin a transaction was successful. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The status of underlying "begin transaction" operation. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::OpenTable </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>table_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">sp::shared_ptr&lt; <a class="el" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a> &gt; *&#160;</td>
          <td class="paramname"><em>table</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Open table with the given name.</p>
<p>This method does an RPC to ensure that the table exists and looks up its schema.</p>
<dl class="section note"><dt>Note</dt><dd>New range partitions created by other clients will immediately be available after opening the table.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">table_name</td><td>Name of the table. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">table</td><td>The result table. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation status.</dd></dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000002">Todo:</a></b></dt><dd><p class="startdd">Should we offer an async version of this as well? </p>
<p class="enddd">Probably should have a configurable timeout in <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html" title="A &quot;factory&quot; for KuduClient objects.">KuduClientBuilder</a>? </p>
</dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void kudu::client::KuduClient::SetLatestObservedTimestamp </td>
          <td>(</td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>ht_timestamp</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Sets the latest observed HybridTime timestamp.</p>
<p>This is only useful when forwarding timestamps between clients to enforce external consistency when using <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c">KuduSession::CLIENT_PROPAGATED</a> external consistency mode.</p>
<p>The HybridTime encoded timestamp should be obtained from another client's <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aa4af2abf2a56d92d8795662fa090baa9">KuduClient::GetLatestObservedTimestamp()</a> method.</p>
<dl class="section note"><dt>Note</dt><dd>This method is experimental and will either disappear or change in a future release.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">ht_timestamp</td><td>Timestamp encoded in HybridTime format. </td></tr>
  </table>
  </dd>
</dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::TableExists </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>table_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool *&#160;</td>
          <td class="paramname"><em>exists</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Check if the table given by 'table_name' exists.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">table_name</td><td>Name of the table. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">exists</td><td>Set only on success; set to <code>true</code> iff table exists. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome.">Status</a> object for the operation. </dd></dl>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a196f1a18c000cdca309d05161caaddaa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a196f1a18c000cdca309d05161caaddaa">&#9670;&nbsp;</a></span>kNoTimestamp</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const uint64_t kudu::client::KuduClient::kNoTimestamp</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Value for the latest observed timestamp when none has been observed or set. </p>

</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.15.0 on Mon Jun 21 2021 20:36:36 by Doxygen 1.9.1</small>
  <br>
  <small>Copyright © 2021 The Apache Software Foundation.</small>
</address>
</body>
</html>
