<!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" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Kudu C++ client API: kudu::client::KuduTableAlterer 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 id="projectrow">
  <td id="projectalign">
   <div id="projectname">Kudu C++ client API
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "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:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(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">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</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_1KuduTableAlterer.html">KuduTableAlterer</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_1KuduTableAlterer-members.html">List of all members</a>  </div>
  <div class="headertitle"><div class="title">kudu::client::KuduTableAlterer Class Reference</div></div>
</div><!--header-->
<div class="contents">

<p>Alters an existing table based on the provided steps.  
 <a href="classkudu_1_1client_1_1KuduTableAlterer.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ae83c4770876b85231908c6d9486d670a" id="r_ae83c4770876b85231908c6d9486d670a"><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_1KuduTableAlterer.html#ae83c4770876b85231908c6d9486d670a">RenameTo</a> (const std::string &amp;new_name)</td></tr>
<tr class="separator:ae83c4770876b85231908c6d9486d670a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a875f42b1a53f03c5b3c076941d60f813" id="r_a875f42b1a53f03c5b3c076941d60f813"><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_1KuduTableAlterer.html#a875f42b1a53f03c5b3c076941d60f813">SetOwner</a> (const std::string &amp;new_owner)</td></tr>
<tr class="separator:a875f42b1a53f03c5b3c076941d60f813"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff4c8a035de22194c8b3d45d09ce6f61" id="r_aff4c8a035de22194c8b3d45d09ce6f61"><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_1KuduTableAlterer.html#aff4c8a035de22194c8b3d45d09ce6f61">SetComment</a> (const std::string &amp;new_comment)</td></tr>
<tr class="separator:aff4c8a035de22194c8b3d45d09ce6f61"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3cc1f7544a371fe3f88a89ba80d7fd2b" id="r_a3cc1f7544a371fe3f88a89ba80d7fd2b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a3cc1f7544a371fe3f88a89ba80d7fd2b">AddColumn</a> (const std::string &amp;name)</td></tr>
<tr class="separator:a3cc1f7544a371fe3f88a89ba80d7fd2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8f4f7212a630e491fa3d2a7fb42921a" id="r_af8f4f7212a630e491fa3d2a7fb42921a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#af8f4f7212a630e491fa3d2a7fb42921a">AlterColumn</a> (const std::string &amp;name)</td></tr>
<tr class="separator:af8f4f7212a630e491fa3d2a7fb42921a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac7ec3f5b4859474c4477a8ef26d1f6b1" id="r_ac7ec3f5b4859474c4477a8ef26d1f6b1"><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_1KuduTableAlterer.html#ac7ec3f5b4859474c4477a8ef26d1f6b1">DropColumn</a> (const std::string &amp;name)</td></tr>
<tr class="separator:ac7ec3f5b4859474c4477a8ef26d1f6b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ce0eb7df63eed7a21519bc360b65da5" id="r_a7ce0eb7df63eed7a21519bc360b65da5"><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_1KuduTableAlterer.html#a7ce0eb7df63eed7a21519bc360b65da5">AddRangePartition</a> (<a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *lower_bound, <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *upper_bound, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> lower_bound_type=<a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">KuduTableCreator::INCLUSIVE_BOUND</a>, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> upper_bound_type=<a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">KuduTableCreator::EXCLUSIVE_BOUND</a>)</td></tr>
<tr class="separator:a7ce0eb7df63eed7a21519bc360b65da5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaefdae348bfb92cf9eb2dc5b7e9ffeb8" id="r_aaefdae348bfb92cf9eb2dc5b7e9ffeb8"><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_1KuduTableAlterer.html#aaefdae348bfb92cf9eb2dc5b7e9ffeb8">AddRangePartition</a> (<a class="el" href="classkudu_1_1client_1_1KuduRangePartition.html">KuduRangePartition</a> *partition)</td></tr>
<tr class="separator:aaefdae348bfb92cf9eb2dc5b7e9ffeb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90cfd36b9e0d40c02895da78f94d75f2" id="r_a90cfd36b9e0d40c02895da78f94d75f2"><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_1KuduTableAlterer.html#a90cfd36b9e0d40c02895da78f94d75f2">AddRangePartitionWithDimension</a> (<a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *lower_bound, <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *upper_bound, const std::string &amp;dimension_label, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> lower_bound_type=<a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">KuduTableCreator::INCLUSIVE_BOUND</a>, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> upper_bound_type=<a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">KuduTableCreator::EXCLUSIVE_BOUND</a>)</td></tr>
<tr class="separator:a90cfd36b9e0d40c02895da78f94d75f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85f8f1bd897175aae51f002e75a1b882" id="r_a85f8f1bd897175aae51f002e75a1b882"><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_1KuduTableAlterer.html#a85f8f1bd897175aae51f002e75a1b882">DropRangePartition</a> (<a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *lower_bound, <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *upper_bound, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> lower_bound_type=<a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">KuduTableCreator::INCLUSIVE_BOUND</a>, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> upper_bound_type=<a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">KuduTableCreator::EXCLUSIVE_BOUND</a>)</td></tr>
<tr class="separator:a85f8f1bd897175aae51f002e75a1b882"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adcc526a77f3aa7ef73e32bc10ca58b52" id="r_adcc526a77f3aa7ef73e32bc10ca58b52"><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_1KuduTableAlterer.html#adcc526a77f3aa7ef73e32bc10ca58b52">AlterExtraConfig</a> (const std::map&lt; std::string, std::string &gt; &amp;extra_configs)</td></tr>
<tr class="separator:adcc526a77f3aa7ef73e32bc10ca58b52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab39fa5d26e3b9a26eccc880d7b7394f" id="r_aab39fa5d26e3b9a26eccc880d7b7394f"><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_1KuduTableAlterer.html#aab39fa5d26e3b9a26eccc880d7b7394f">SetTableDiskSizeLimit</a> (int64_t disk_size_limit)</td></tr>
<tr class="separator:aab39fa5d26e3b9a26eccc880d7b7394f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad230311b3ebf15569d7cbbdeacc569c5" id="r_ad230311b3ebf15569d7cbbdeacc569c5"><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_1KuduTableAlterer.html#ad230311b3ebf15569d7cbbdeacc569c5">SetTableRowCountLimit</a> (int64_t row_count_limit)</td></tr>
<tr class="separator:ad230311b3ebf15569d7cbbdeacc569c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f672c13717144d2fa47c1592d5887b6" id="r_a5f672c13717144d2fa47c1592d5887b6"><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_1KuduTableAlterer.html#a5f672c13717144d2fa47c1592d5887b6">timeout</a> (const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;timeout)</td></tr>
<tr class="separator:a5f672c13717144d2fa47c1592d5887b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7a50fe4124a1a5caaf2a65f5e2b18e4" id="r_ae7a50fe4124a1a5caaf2a65f5e2b18e4"><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_1KuduTableAlterer.html#ae7a50fe4124a1a5caaf2a65f5e2b18e4">wait</a> (bool wait)</td></tr>
<tr class="separator:ae7a50fe4124a1a5caaf2a65f5e2b18e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a14768f28048355d997e0ed4fa82e218c" id="r_a14768f28048355d997e0ed4fa82e218c"><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_1KuduTableAlterer.html#a14768f28048355d997e0ed4fa82e218c">Alter</a> ()</td></tr>
<tr class="separator:a14768f28048355d997e0ed4fa82e218c"><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>Alters an existing table based on the provided steps. </p>
<p>Create a new instance of a table alterer using <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a5e6f516952ecba1e62f30b13b7d9c134">KuduClient::NewTableAlterer()</a>. An example of usage: </p><div class="fragment"><div class="line">std::unique_ptr&lt;KuduTableAlterer&gt; alterer(</div>
<div class="line">  client-&gt;NewTableAlterer(<span class="stringliteral">&quot;table-name&quot;</span>));</div>
<div class="line">alterer-&gt;AddColumn(<span class="stringliteral">&quot;foo&quot;</span>)-&gt;Type(KuduColumnSchema::INT32)-&gt;NotNull();</div>
<div class="line">alterer-&gt;AlterColumn(<span class="stringliteral">&quot;bar&quot;</span>)-&gt;Compression(KuduColumnStorageAttributes::LZ4);</div>
<div class="line"><a class="code hl_class" href="classkudu_1_1Status.html">Status</a> s = alterer-&gt;Alter();</div>
<div class="ttc" id="aclasskudu_1_1Status_html"><div class="ttname"><a href="classkudu_1_1Status.html">kudu::Status</a></div><div class="ttdoc">A representation of an operation's outcome.</div><div class="ttdef"><b>Definition</b> status.h:165</div></div>
</div><!-- fragment --> </div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a3cc1f7544a371fe3f88a89ba80d7fd2b" name="a3cc1f7544a371fe3f88a89ba80d7fd2b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3cc1f7544a371fe3f88a89ba80d7fd2b">&#9670;&#160;</a></span>AddColumn()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> * kudu::client::KuduTableAlterer::AddColumn </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Add a new column to the table.</p>
<p>When adding a column, you must specify the default value of the new column using KuduColumnSpec::DefaultValue(...).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>Name of the column do add. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to the result ColumnSpec object. The alterer keeps ownership of the newly created object. </dd></dl>

</div>
</div>
<a id="a7ce0eb7df63eed7a21519bc360b65da5" name="a7ce0eb7df63eed7a21519bc360b65da5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7ce0eb7df63eed7a21519bc360b65da5">&#9670;&#160;</a></span>AddRangePartition() <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_1KuduTableAlterer.html">KuduTableAlterer</a> * kudu::client::KuduTableAlterer::AddRangePartition </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td>
          <td class="paramname"><em>lower_bound</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td>
          <td class="paramname"><em>upper_bound</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a>&#160;</td>
          <td class="paramname"><em>lower_bound_type</em> = <code><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">KuduTableCreator::INCLUSIVE_BOUND</a></code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a>&#160;</td>
          <td class="paramname"><em>upper_bound_type</em> = <code><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">KuduTableCreator::EXCLUSIVE_BOUND</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Add a range partition to the table with the specified lower bound and upper bound.</p>
<dl class="section note"><dt>Note</dt><dd>The table alterer takes ownership of the rows.</dd>
<dd>
Multiple range partitions may be added as part of a single alter table transaction by calling this method multiple times on the table alterer.</dd>
<dd>
This client may immediately write and scan the new tablets when <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a14768f28048355d997e0ed4fa82e218c">Alter()</a> returns success, however other existing clients may have to wait for a timeout period to elapse before the tablets become visible. This period is configured by the master's 'table_locations_ttl_ms' flag, and defaults to 5 minutes.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">lower_bound</td><td>The lower bound of the range partition to add. If the row is empty, then the lower bound is unbounded. If any of the columns are unset, the logical minimum value for the column's type will be used by default. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">upper_bound</td><td>The upper bound of the range partition to add. If the row is empty, then the upper bound is unbounded. If any of the individual columns are unset, the logical minimum value for the column' type will be used by default. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">lower_bound_type</td><td>The type of the lower bound, either inclusive or exclusive. Defaults to inclusive. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">upper_bound_type</td><td>The type of the lower bound, either inclusive or exclusive. Defaults to exclusive. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>

</div>
</div>
<a id="aaefdae348bfb92cf9eb2dc5b7e9ffeb8" name="aaefdae348bfb92cf9eb2dc5b7e9ffeb8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaefdae348bfb92cf9eb2dc5b7e9ffeb8">&#9670;&#160;</a></span>AddRangePartition() <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_1KuduTableAlterer.html">KuduTableAlterer</a> * kudu::client::KuduTableAlterer::AddRangePartition </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduRangePartition.html">KuduRangePartition</a> *&#160;</td>
          <td class="paramname"><em>partition</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Add the specified range partition with custom hash schema to the table.</p>
<dl class="section note"><dt>Note</dt><dd>The table alterer takes ownership of the partition object.</dd>
<dd>
Multiple range partitions may be added as part of a single alter table transaction by calling this method multiple times on the table alterer.</dd>
<dd>
This client may immediately write and scan the new tablets when <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a14768f28048355d997e0ed4fa82e218c">Alter()</a> returns success, however other existing clients may have to wait for a timeout period to elapse before the tablets become visible. This period is configured by the master's 'table_locations_ttl_ms' flag, and defaults to 5 minutes.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">partition</td><td>The range partition to be created: it can have a custom hash schema. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>

</div>
</div>
<a id="a90cfd36b9e0d40c02895da78f94d75f2" name="a90cfd36b9e0d40c02895da78f94d75f2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a90cfd36b9e0d40c02895da78f94d75f2">&#9670;&#160;</a></span>AddRangePartitionWithDimension()</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::KuduTableAlterer::AddRangePartitionWithDimension </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td>
          <td class="paramname"><em>lower_bound</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td>
          <td class="paramname"><em>upper_bound</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>dimension_label</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a>&#160;</td>
          <td class="paramname"><em>lower_bound_type</em> = <code><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">KuduTableCreator::INCLUSIVE_BOUND</a></code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a>&#160;</td>
          <td class="paramname"><em>upper_bound_type</em> = <code><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">KuduTableCreator::EXCLUSIVE_BOUND</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Add a range partition to the table with dimension label.</p>
<dl class="section note"><dt>Note</dt><dd>The table alterer takes ownership of the rows.</dd>
<dd>
Multiple range partitions may be added as part of a single alter table transaction by calling this method multiple times on the table alterer.</dd>
<dd>
This client may immediately write and scan the new tablets when <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a14768f28048355d997e0ed4fa82e218c">Alter()</a> returns success, however other existing clients may have to wait for a timeout period to elapse before the tablets become visible. This period is configured by the master's 'table_locations_ttl_ms' flag, and defaults to 5 minutes.</dd>
<dd>
See <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a63163407b00bf821ca7ea17f2e0143ea">KuduTableCreator::dimension_label()</a> for details on dimension label.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">lower_bound</td><td>The lower bound of the range partition to add. If the row is empty, then the lower bound is unbounded. If any of the columns are unset, the logical minimum value for the column's type will be used by default. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">upper_bound</td><td>The upper bound of the range partition to add. If the row is empty, then the upper bound is unbounded. If any of the individual columns are unset, the logical minimum value for the column' type will be used by default. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">dimension_label</td><td>The dimension label for the tablet to be created. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">lower_bound_type</td><td>The type of the lower bound, either inclusive or exclusive. Defaults to inclusive. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">upper_bound_type</td><td>The type of the lower bound, either inclusive or exclusive. Defaults to exclusive. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>

</div>
</div>
<a id="a14768f28048355d997e0ed4fa82e218c" name="a14768f28048355d997e0ed4fa82e218c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a14768f28048355d997e0ed4fa82e218c">&#9670;&#160;</a></span>Alter()</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::KuduTableAlterer::Alter </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><a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome.">Status</a> of the ALTER TABLE operation. The return value may indicate an error in the alter operation, or a misuse of the builder (e.g. add_column() with default_value=NULL). In the latter case, only the last error is returned. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> * kudu::client::KuduTableAlterer::AlterColumn </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Alter an existing column.</p>
<dl class="section note"><dt>Note</dt><dd>The column may not be in the primary key.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Name of the column to alter. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to the result ColumnSpec object. The alterer keeps ownership of the newly created object. </dd></dl>

</div>
</div>
<a id="adcc526a77f3aa7ef73e32bc10ca58b52" name="adcc526a77f3aa7ef73e32bc10ca58b52"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adcc526a77f3aa7ef73e32bc10ca58b52">&#9670;&#160;</a></span>AlterExtraConfig()</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::KuduTableAlterer::AlterExtraConfig </td>
          <td>(</td>
          <td class="paramtype">const std::map&lt; std::string, std::string &gt; &amp;&#160;</td>
          <td class="paramname"><em>extra_configs</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Change the table's extra configuration properties.</p>
<dl class="section note"><dt>Note</dt><dd>These configuration properties will be merged into existing configuration properties.</dd>
<dd>
If the value of the kv pair is empty, the property will be unset.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">extra_configs</td><td>The table's extra configuration properties. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>

</div>
</div>
<a id="ac7ec3f5b4859474c4477a8ef26d1f6b1" name="ac7ec3f5b4859474c4477a8ef26d1f6b1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac7ec3f5b4859474c4477a8ef26d1f6b1">&#9670;&#160;</a></span>DropColumn()</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::KuduTableAlterer::DropColumn </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Drops an existing column from the table.</p>
<dl class="section note"><dt>Note</dt><dd>The column may not be in the primary key.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Name of the column to alter. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>

</div>
</div>
<a id="a85f8f1bd897175aae51f002e75a1b882" name="a85f8f1bd897175aae51f002e75a1b882"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a85f8f1bd897175aae51f002e75a1b882">&#9670;&#160;</a></span>DropRangePartition()</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::KuduTableAlterer::DropRangePartition </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td>
          <td class="paramname"><em>lower_bound</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td>
          <td class="paramname"><em>upper_bound</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a>&#160;</td>
          <td class="paramname"><em>lower_bound_type</em> = <code><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">KuduTableCreator::INCLUSIVE_BOUND</a></code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a>&#160;</td>
          <td class="paramname"><em>upper_bound_type</em> = <code><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">KuduTableCreator::EXCLUSIVE_BOUND</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Drop the range partition from the table with the specified lower bound and upper bound. The bounds must match an existing range partition exactly, and may not span multiple range partitions.</p>
<dl class="section note"><dt>Note</dt><dd>The table alterer takes ownership of the rows.</dd>
<dd>
Multiple range partitions may be dropped as part of a single alter table transaction by calling this method multiple times on the table alterer.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">lower_bound</td><td>The inclusive lower bound of the range partition to drop. If the row is empty, then the lower bound is unbounded. If any of the columns are unset, the logical minimum value for the column's type will be used by default. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">upper_bound</td><td>The exclusive upper bound of the range partition to add. If the row is empty, then the upper bound is unbounded. If any of the individual columns are unset, the logical minimum value for the column' type will be used by default. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">lower_bound_type</td><td>The type of the lower bound, either inclusive or exclusive. Defaults to inclusive. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">upper_bound_type</td><td>The type of the lower bound, either inclusive or exclusive. Defaults to exclusive. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>

</div>
</div>
<a id="ae83c4770876b85231908c6d9486d670a" name="ae83c4770876b85231908c6d9486d670a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae83c4770876b85231908c6d9486d670a">&#9670;&#160;</a></span>RenameTo()</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::KuduTableAlterer::RenameTo </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>new_name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Rename the table.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">new_name</td><td>The new name for the table. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>

</div>
</div>
<a id="aff4c8a035de22194c8b3d45d09ce6f61" name="aff4c8a035de22194c8b3d45d09ce6f61"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff4c8a035de22194c8b3d45d09ce6f61">&#9670;&#160;</a></span>SetComment()</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::KuduTableAlterer::SetComment </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>new_comment</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set the comment on the table.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">new_comment</td><td>The new comment on the table. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>

</div>
</div>
<a id="a875f42b1a53f03c5b3c076941d60f813" name="a875f42b1a53f03c5b3c076941d60f813"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a875f42b1a53f03c5b3c076941d60f813">&#9670;&#160;</a></span>SetOwner()</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::KuduTableAlterer::SetOwner </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>new_owner</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set the owner of the table.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">new_owner</td><td>The new owner for the table. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>

</div>
</div>
<a id="aab39fa5d26e3b9a26eccc880d7b7394f" name="aab39fa5d26e3b9a26eccc880d7b7394f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aab39fa5d26e3b9a26eccc880d7b7394f">&#9670;&#160;</a></span>SetTableDiskSizeLimit()</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::KuduTableAlterer::SetTableDiskSizeLimit </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>disk_size_limit</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set the disk size limit of the table by the super user.</p>
<dl class="section note"><dt>Note</dt><dd>The table limit alterations, including disk_size_limit and row_count_limit, cannot be changed in the same alteration request with other alterations, because the table 'limit' alteration needs the super user permission.</dd>
<dd>
It is experimental and may change or disappear in future. This feature currently applies size limit on a single table.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">disk_size_limit</td><td>The max table disk size, -1 is for no limit </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>

</div>
</div>
<a id="ad230311b3ebf15569d7cbbdeacc569c5" name="ad230311b3ebf15569d7cbbdeacc569c5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad230311b3ebf15569d7cbbdeacc569c5">&#9670;&#160;</a></span>SetTableRowCountLimit()</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::KuduTableAlterer::SetTableRowCountLimit </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>row_count_limit</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set the row count limit of the table by the super user.</p>
<dl class="section note"><dt>Note</dt><dd>The table limit alterations, including disk_size_limit and row_count_limit, cannot be changed in the same alteration request with other alterations, because the table 'limit' alteration needs the super user permission.</dd>
<dd>
It is experimental and may change or disappear in future. This feature currently applies row count limit on a single table.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">row_count_limit</td><td>The max row count of the table, -1 is for no limit </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>

</div>
</div>
<a id="a5f672c13717144d2fa47c1592d5887b6" name="a5f672c13717144d2fa47c1592d5887b6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5f672c13717144d2fa47c1592d5887b6">&#9670;&#160;</a></span>timeout()</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::KuduTableAlterer::timeout </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&#160;</td>
          <td class="paramname"><em>timeout</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set a timeout for the alteration operation.</p>
<p>This includes any waiting after the alter has been submitted (i.e. if the alter is slow to be performed on a large table, it may time out and then later be successful).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">timeout</td><td>Timeout to set. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>

</div>
</div>
<a id="ae7a50fe4124a1a5caaf2a65f5e2b18e4" name="ae7a50fe4124a1a5caaf2a65f5e2b18e4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae7a50fe4124a1a5caaf2a65f5e2b18e4">&#9670;&#160;</a></span>wait()</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::KuduTableAlterer::wait </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>wait</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Whether to wait for completion of alteration operations.</p>
<p>If set to <code>true</code>, an alteration operation returns control only after the operation is complete. Otherwise, every operation returns immediately. By default (i.e. when an alteration object is created) it is set to <code>true</code>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">wait</td><td>Whether to wait for alteration operation to complete before returning control. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer 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.17.0 on Mon Sep 4 2023 19:49:30 by Doxygen 1.9.8</small>
  <br>
  <small>Copyright © 2023 The Apache Software Foundation.</small>
</address>
</body>
</html>
