You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by to...@apache.org on 2017/03/21 00:16:51 UTC

[44/51] [partial] kudu git commit: Update docs, add 1.3 release

http://git-wip-us.apache.org/repos/asf/kudu/blob/d114777e/cpp-client-api/client_8h_source.html
----------------------------------------------------------------------
diff --git a/cpp-client-api/client_8h_source.html b/cpp-client-api/client_8h_source.html
index fdad8e7..3d13703 100644
--- a/cpp-client-api/client_8h_source.html
+++ b/cpp-client-api/client_8h_source.html
@@ -89,59 +89,59 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="title">client.h</div>  </div>
 </div><!--header-->
 <div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">// Licensed to the Apache Software Foundation (ASF) under one</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">// or more contributor license agreements. See the NOTICE file</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">// distributed with this work for additional information</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">// regarding copyright ownership. The ASF licenses this file</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">// to you under the Apache License, Version 2.0 (the</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">// &quot;License&qu
 ot;); you may not use this file except in compliance</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">// with the License. You may obtain a copy of the License at</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">//   http://www.apache.org/licenses/LICENSE-2.0</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">// Unless required by applicable law or agreed to in writing,</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">// software distributed under the License is distributed on an</span></div><div class="line"><a
  name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">// &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">// KIND, either express or implied. See the License for the</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// specific language governing permissions and limitations</span></div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">// under the License.</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;</div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#ifndef KUDU_CLIENT_CLIENT_H</span></div><div class="line"><a name="l00026"></a><span c
 lass="lineno">   26</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_CLIENT_H</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#include &lt;stdint.h&gt;</span></div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#include &quot;kudu/client/resource_metrics.h&quot;</span></div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#include &quot;kudu/client/row
 _result.h&quot;</span></div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#include &quot;kudu/client/scan_batch.h&quot;</span></div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#include &quot;kudu/client/scan_predicate.h&quot;</span></div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#include &quot;kudu/client/schema.h&quot;</span></div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="shared__ptr_8h.html">kudu/client/shared_ptr.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_NO_STUBS</span></div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#include &lt;gtest/
 gtest_prod.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/macros.h&quot;</span></div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/port.h&quot;</span></div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor">#include &quot;kudu/client/stubs.h&quot;</span></div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="preprocessor">#include &quot;kudu/client/write_op.h&quot;</span></div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span clas
 s="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">#include &quot;kudu/util/monotime.h&quot;</span></div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="status_8h.html">kudu/util/status.h</a>&quot;</span></div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="keyword">class </span>ClientStressTest_TestUniqueClientIds_Test;</div><div class="line"><a name="l00053"></a><span class="lineno"> 
   53</span>&#160;<span class="keyword">class </span>LinkedListTester;</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="keyword">class </span>PartitionSchema;</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="keyword">class </span>KuduLoggingCallback;</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="keyword">class </span>KuduScanToken;</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="keyword">class </span>KuduSession;</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span c
 lass="keyword">class </span>KuduStatusCallback;</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="keyword">class </span>KuduTable;</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="keyword">class </span>KuduTableAlterer;</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="keyword">class </span>KuduTableCreator;</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="keyword">class </span>KuduTablet;</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="keyword">class </span>KuduTabletServer;</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="keyword">class </span>KuduValue;</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="keyword">class </span>KuduWriteOperation;</div><div class
 ="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="keyword">namespace </span>internal {</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="keyword">class </span>Batcher;</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="keyword">class </span>ErrorCollector;</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="keyword">class </span>GetTableSchemaRpc;</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="keyword">class </span>LookupRpc;</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="keyword">class </span>MetaCache;</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="keyword">class </span>RemoteTablet;</div><d
 iv class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="keyword">class </span>RemoteTabletServer;</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="keyword">class </span>WriteRpc;</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;} <span class="comment">// namespace internal</span></div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;<span class="keywordtype">void</span> KUDU_EXPORT InstallLoggingCallback(KuduLoggingCallback* cb);</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;<span class="keywordtype">void</span> KUDU_EXPORT UninstallLoggingCallback();</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;</div><d
 iv class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="keywordtype">void</span> KUDU_EXPORT SetVerboseLogLevel(<span class="keywordtype">int</span> level);</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;Status KUDU_EXPORT SetInternalSignalNumber(<span class="keywordtype">int</span> signum);</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;Status KUDU_EXPORT DisableSaslInitialization();</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;std::string KUDU_EXPORT GetShortVersionString();</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;</div><div class="line"><a name="l001
 50"></a><span class="lineno">  150</span>&#160;std::string KUDU_EXPORT GetAllVersionInfo();</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;</div><div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClientBuilder.html">  156</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> {</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>();</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>();</div><div class="line"><a name="l00160"></a><
 span class="lineno">  160</span>&#160;</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>&amp; clear_master_server_addrs();</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>&amp; master_server_addrs(<span class="keyword">const</span> std::vector&lt;std::string&gt;&amp; addrs);</div><div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>&amp; add_master_server_addr(<span class="keyword">const</span> std::string&amp; addr);</div><div class="line"><a name="l0018
 1"></a><span class="lineno">  181</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>&amp; default_admin_operation_timeout(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&amp; timeout);</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>&amp; default_rpc_timeout(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&amp; timeout);</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Statu
 s</a> Build(sp::shared_ptr&lt;KuduClient&gt;* client);</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;  Data* data_;</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>);</d
 iv><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;};</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;</div><div class="line"><a name="l00249"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html">  249</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a> : <span class="keyword">public</span> sp::enable_shared_from_this&lt;KuduClient&gt; {</div><div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>();</div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;  <a class="code
 " href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>* NewTableCreator();</div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;</div><div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> IsCreateTableInProgress(<span class="keyword">const</span> std::string&amp; table_name,</div><div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;                                 <span class="keywordtype">bool</span> *create_in_progress);</div><div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;</div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> DeleteTable(<span class="keyword">const</span> std::string&amp; table_name);</div><div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;</div><div class="line
 "><a name="l00283"></a><span class="lineno">  283</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* NewTableAlterer(<span class="keyword">const</span> std::string&amp; table_name);</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;</div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> IsAlterTableInProgress(<span class="keyword">const</span> std::string&amp; table_name,</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;                                <span class="keywordtype">bool</span> *alter_in_progress);</div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetTableSchema(<span class="keyword">const</span> std::string&amp; table_name,</div><div class="line"><a name="l00303"></a><span 
 class="lineno">  303</span>&#160;                        <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>* schema);</div><div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;</div><div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> ListTabletServers(std::vector&lt;KuduTabletServer*&gt;* tablet_servers);</div><div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;</div><div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> ListTables(std::vector&lt;std::string&gt;* tables,</div><div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;                    <span class="keyword">const</span> std::string&amp; filter = <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00322"></a><span class="li
 neno">  322</span>&#160;</div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> TableExists(<span class="keyword">const</span> std::string&amp; table_name, <span class="keywordtype">bool</span>* exists);</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> OpenTable(<span class="keyword">const</span> std::string&amp; table_name,</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;                   sp::shared_ptr&lt;KuduTable&gt;* table);</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;  sp::shared_ptr&lt;KuduSession&gt; NewSession();</div><div class="line"><a name="l00354"></
 a><span class="lineno">  354</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;</div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> KUDU_NO_EXPORT GetTablet(<span class="keyword">const</span> std::string&amp; tablet_id,</div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;                                  <a class="code" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a>** tablet);</div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;</div><div class="line"><a name="l00375"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">  375</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1Ku
 duClient.html#aef70c7f3a596ecda4040f9d46514b11a">ReplicaSelection</a> {</div><div class="line"><a name="l00376"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239">  376</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239">LEADER_ONLY</a>,      </div><div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;</div><div class="line"><a name="l00378"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aa801886067da41dacd0c9c2b8091f08d8">  378</a></span>&#160;    CLOSEST_REPLICA,  </div><div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;</div><div class="line"><a name="l00381"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda404
 0f9d46514b11aaa060fb6126a3e3fa80079f885dc7d48f">  381</a></span>&#160;    FIRST_REPLICA     </div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;  };</div><div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;  <span class="keywordtype">bool</span> IsMultiMaster() <span class="keyword">const</span>;</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;</div><div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&amp; default_admin_operation_timeout() <span class="keyword">const</span>;</div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;</div><div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;  <span class="keyword">const</span> <a class=
 "code" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&amp; default_rpc_timeout() <span class="keyword">const</span>;</div><div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;</div><div class="line"><a name="l00396"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa">  396</a></span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> uint64_t <a class="code" href="classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa">kNoTimestamp</a>;</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;</div><div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;  uint64_t GetLatestObservedTimestamp() <span class="keyword">const</span>;</div><div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;</div><div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;  <sp
 an class="keywordtype">void</span> SetLatestObservedTimestamp(uint64_t ht_timestamp);</div><div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;</div><div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;</div><div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::Batcher;</div><div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::GetTableSchemaRpc;</div><div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;  <span class="keyword">friend</span>
  <span class="keyword">class </span>internal::LookupRpc;</div><div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::MetaCache;</div><div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::RemoteTablet;</div><div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::RemoteTabletServer;</div><div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::WriteRpc;</div><div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>ClientTest;</div><div class="line"><a name="l00466"></a><span cla
 ss="lineno">  466</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>;</div><div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a>;</div><div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduScanToken.html">KuduScanToken</a>;</div><div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a>;</div><div class="line"><a name="l00470"></a><span class="lineno">  470</
 span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a>;</div><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a>;</div><div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>;</div><div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>;</div><div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;</div><div class="line"><a
  name="l00475"></a><span class="lineno">  475</span>&#160;  FRIEND_TEST(kudu::ClientStressTest, TestUniqueClientIds);</div><div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;  FRIEND_TEST(ClientTest, TestGetTabletServerBlacklist);</div><div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;  FRIEND_TEST(ClientTest, TestMasterDown);</div><div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;  FRIEND_TEST(ClientTest, TestMasterLookupPermits);</div><div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;  FRIEND_TEST(ClientTest, TestMetaCacheExpiry);</div><div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;  FRIEND_TEST(ClientTest, TestNonCoveringRangePartitions);</div><div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;  FRIEND_TEST(ClientTest, TestReplicatedTabletWritesWithLeaderElection);</div><div class="line"><a name="l00482"></a><span
  class="lineno">  482</span>&#160;  FRIEND_TEST(ClientTest, TestScanFaultTolerance);</div><div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;  FRIEND_TEST(ClientTest, TestScanTimeout);</div><div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;  FRIEND_TEST(ClientTest, TestWriteWithDeadMaster);</div><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;  FRIEND_TEST(MasterFailoverTest, TestPauseAfterCreateTableIssued);</div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;</div><div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>();</div><div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;</div><div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00490"></
 a><span class="lineno">  490</span>&#160;  Data* data_;</div><div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;</div><div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>);</div><div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;};</div><div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;</div><div class="line"><a name="l00496"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTabletServer.html">  496</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a> {</div><div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160; 
  ~<a class="code" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a>();</div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;</div><div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;  <span class="keyword">const</span> std::string&amp; uuid() <span class="keyword">const</span>;</div><div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;</div><div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;  <span class="keyword">const</span> std::string&amp; hostname() <span class="keyword">const</span>;</div><div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;</div><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;  uint16_t port() <span class="keyword">const</span>;</div><div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;</div><div class="line"><a name="l00512"></a><span class="lineno"> 
  512</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;</div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>;</div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a>;</div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuild
 er</a>;</div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;</div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a>();</div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;</div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;  Data* data_;</div><div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;</div><div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduTabletServer);</div><div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;};</div><div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;</div><div class="line"><a name="l00528"
 ></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduReplica.html">  528</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduReplica.html">KuduReplica</a> {</div><div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduReplica.html">KuduReplica</a>();</div><div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;</div><div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;  <span class="keywordtype">bool</span> is_leader() <span class="keyword">const</span>;</div><div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;</div><div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;  <span class="keyword">const</span> <a class="
 code" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a>&amp; ts() <span class="keyword">const</span>;</div><div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;</div><div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>;</div><div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a>;</div><div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;</div><div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;  <span cla
 ss="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;</div><div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduReplica.html">KuduReplica</a>();</div><div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;</div><div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;  Data* data_;</div><div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;</div><div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduReplica);</div><div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;};</div><div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;</div><div class
 ="line"><a name="l00556"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTablet.html">  556</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a> {</div><div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a>();</div><div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;</div><div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;  <span class="keyword">const</span> std::string&amp; id() <span class="keyword">const</span>;</div><div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;</div><div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;  <span class="keywor
 d">const</span> std::vector&lt;const KuduReplica*&gt;&amp; replicas() <span class="keyword">const</span>;</div><div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;</div><div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>;</div><div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a>;</div><div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;</div><div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;  <span class="keyword">class 
 </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;</div><div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a>();</div><div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;</div><div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;  Data* data_;</div><div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;</div><div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduTablet);</div><div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;};</div><div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;</div><div class="line"><a name="l0058
 6"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableCreator.html">  586</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a> {</div><div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>();</div><div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;</div><div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; table_name(<span class="keyword">const</span> std::string&amp; name);</div><div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;</div><div class="line"><a
  name="l00613"></a><span class="lineno">  613</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; schema(<span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>* schema);</div><div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; add_hash_partitions(<span class="keyword">const</span> std::vector&lt;std::string&gt;&amp; columns,</div><div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;                                        int32_t num_buckets);</div><div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;</div><div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;  <a class="code" href="classkudu_1_1cl
 ient_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; add_hash_partitions(<span class="keyword">const</span> std::vector&lt;std::string&gt;&amp; columns,</div><div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;                                        int32_t num_buckets, int32_t seed);</div><div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;</div><div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; set_range_partition_columns(<span class="keyword">const</span> std::vector&lt;std::string&gt;&amp; columns);</div><div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;</div><div class="line"><a name="l00667"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">  667</a></span>&#160;  <span class="keyword">enum</span> 
 <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">RangePartitionBound</a> {</div><div class="line"><a name="l00668"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">  668</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">EXCLUSIVE_BOUND</a>, </div><div class="line"><a name="l00669"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">  669</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">INCLUSIVE_BOUND</a>, </div><div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;  };</div><div class
 ="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;</div><div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; add_range_partition(<a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* lower_bound,</div><div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;                                        <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* upper_bound,</div><div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;                                        <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">RangePartitionBound</a> lower_bound_type = INCLUSIVE_BOUND,</div><div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160;                                        <a class="code" href="classkudu_1_1c
 lient_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">RangePartitionBound</a> upper_bound_type = EXCLUSIVE_BOUND);</div><div class="line"><a name="l00704"></a><span class="lineno">  704</span>&#160;</div><div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; add_range_partition_split(<a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* split_row);</div><div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;</div><div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; split_rows(<span class="keyword">const</span> std::vector&lt;const KuduPartialRow*&gt;&amp; split_rows)</div><div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliter
 al">&quot;use add_range_partition_split() instead&quot;</span>);</div><div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;</div><div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; num_replicas(<span class="keywordtype">int</span> n_replicas);</div><div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;</div><div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; timeout(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&amp; timeout);</div><div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;</div><div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTa
 bleCreator.html">KuduTableCreator</a>&amp; wait(<span class="keywordtype">bool</span> wait);</div><div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;</div><div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Create();</div><div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;</div><div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;</div><div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>;</
 div><div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;</div><div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>(<a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>* client);</div><div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;</div><div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;  Data* data_;</div><div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;</div><div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>);</div><div class="line"><
 a name="l00780"></a><span class="lineno">  780</span>&#160;};</div><div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;</div><div class="line"><a name="l00802"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTable.html">  802</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a> : <span class="keyword">public</span> sp::enable_shared_from_this&lt;KuduTable&gt; {</div><div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00804"></a><span class="lineno">  804</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a>();</div><div class="line"><a name="l00805"></a><span class="lineno">  805</span>&#160;</div><div class="line"><a name="l00807"></a><span class="lineno">  807</span>&#160;  <span class="keyword">const</span> std::st
 ring&amp; name() <span class="keyword">const</span>;</div><div class="line"><a name="l00808"></a><span class="lineno">  808</span>&#160;</div><div class="line"><a name="l00816"></a><span class="lineno">  816</span>&#160;  <span class="keyword">const</span> std::string&amp; id() <span class="keyword">const</span>;</div><div class="line"><a name="l00817"></a><span class="lineno">  817</span>&#160;</div><div class="line"><a name="l00819"></a><span class="lineno">  819</span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; schema() <span class="keyword">const</span>;</div><div class="line"><a name="l00820"></a><span class="lineno">  820</span>&#160;</div><div class="line"><a name="l00822"></a><span class="lineno">  822</span>&#160;  <span class="keywordtype">int</span> num_replicas() <span class="keyword">const</span>;</div><div class="line"><a name="l00823"></a><span class="lineno">  823</span>&#160;</div><div 
 class="line"><a name="l00827"></a><span class="lineno">  827</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a>* NewInsert();</div><div class="line"><a name="l00828"></a><span class="lineno">  828</span>&#160;</div><div class="line"><a name="l00832"></a><span class="lineno">  832</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a>* NewUpsert();</div><div class="line"><a name="l00833"></a><span class="lineno">  833</span>&#160;</div><div class="line"><a name="l00837"></a><span class="lineno">  837</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a>* NewUpdate();</div><div class="line"><a name="l00838"></a><span class="lineno">  838</span>&#160;</div><div class="line"><a name="l00842"></a><span class="lineno">  842</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a>* NewDelete();</div><div class="line"><a name="l00843"></a><span c
 lass="lineno">  843</span>&#160;</div><div class="line"><a name="l00867"></a><span class="lineno">  867</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* NewComparisonPredicate(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name,</div><div class="line"><a name="l00868"></a><span class="lineno">  868</span>&#160;                                        <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">KuduPredicate::ComparisonOp</a> op,</div><div class="line"><a name="l00869"></a><span class="lineno">  869</span>&#160;                                        <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* value);</div><div class="line"><a name="l00870"></a><span class="lineno">  870</span>&#160;</div><div class="line"><a name="l00894"></a><span class="lineno">  894</span>&#160;  <a class="code" href="classkudu
 _1_1client_1_1KuduPredicate.html">KuduPredicate</a>* NewInListPredicate(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name,</div><div class="line"><a name="l00895"></a><span class="lineno">  895</span>&#160;                                    std::vector&lt;KuduValue*&gt;* values);</div><div class="line"><a name="l00896"></a><span class="lineno">  896</span>&#160;</div><div class="line"><a name="l00899"></a><span class="lineno">  899</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>* client() <span class="keyword">const</span>;</div><div class="line"><a name="l00900"></a><span class="lineno">  900</span>&#160;</div><div class="line"><a name="l00902"></a><span class="lineno">  902</span>&#160;  <span class="keyword">const</span> PartitionSchema&amp; partition_schema() <span class="keyword">const</span>;</div><div class="line"><a name="l00903"></a><span class="lineno">  903</span>&#160;</di
 v><div class="line"><a name="l00904"></a><span class="lineno">  904</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00905"></a><span class="lineno">  905</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00906"></a><span class="lineno">  906</span>&#160;</div><div class="line"><a name="l00907"></a><span class="lineno">  907</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>;</div><div class="line"><a name="l00908"></a><span class="lineno">  908</span>&#160;</div><div class="line"><a name="l00909"></a><span class="lineno">  909</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a>(<span class="keyword">const</span> sp::shared_ptr&lt;KuduClient&gt;&amp; client,</div><div class="line"><a name="l00910"></a><span class="lineno">  910</span>&#160;           
  <span class="keyword">const</span> std::string&amp; name,</div><div class="line"><a name="l00911"></a><span class="lineno">  911</span>&#160;            <span class="keyword">const</span> std::string&amp; <span class="keywordtype">id</span>,</div><div class="line"><a name="l00912"></a><span class="lineno">  912</span>&#160;            <span class="keywordtype">int</span> num_replicas,</div><div class="line"><a name="l00913"></a><span class="lineno">  913</span>&#160;            <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; schema,</div><div class="line"><a name="l00914"></a><span class="lineno">  914</span>&#160;            <span class="keyword">const</span> PartitionSchema&amp; partition_schema);</div><div class="line"><a name="l00915"></a><span class="lineno">  915</span>&#160;</div><div class="line"><a name="l00916"></a><span class="lineno">  916</span>&#160;  <span class="comment">// Owned.</span></div><div 
 class="line"><a name="l00917"></a><span class="lineno">  917</span>&#160;  Data* data_;</div><div class="line"><a name="l00918"></a><span class="lineno">  918</span>&#160;</div><div class="line"><a name="l00919"></a><span class="lineno">  919</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduTable);</div><div class="line"><a name="l00920"></a><span class="lineno">  920</span>&#160;};</div><div class="line"><a name="l00921"></a><span class="lineno">  921</span>&#160;</div><div class="line"><a name="l00933"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableAlterer.html">  933</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a> {</div><div class="line"><a name="l00934"></a><span class="lineno">  934</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00935"></a><span class="lineno">  935</span>&#160;  ~<a class="code" href="classkudu_1
 _1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>();</div><div class="line"><a name="l00936"></a><span class="lineno">  936</span>&#160;</div><div class="line"><a name="l00942"></a><span class="lineno">  942</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* RenameTo(<span class="keyword">const</span> std::string&amp; new_name);</div><div class="line"><a name="l00943"></a><span class="lineno">  943</span>&#160;</div><div class="line"><a name="l00953"></a><span class="lineno">  953</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>* AddColumn(<span class="keyword">const</span> std::string&amp; name);</div><div class="line"><a name="l00954"></a><span class="lineno">  954</span>&#160;</div><div class="line"><a name="l00963"></a><span class="lineno">  963</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>* AlterColumn(<span class="key
 word">const</span> std::string&amp; name);</div><div class="line"><a name="l00964"></a><span class="lineno">  964</span>&#160;</div><div class="line"><a name="l00972"></a><span class="lineno">  972</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* DropColumn(<span class="keyword">const</span> std::string&amp; name);</div><div class="line"><a name="l00973"></a><span class="lineno">  973</span>&#160;</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* AddRangePartition(</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160;      <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* lower_bound,</div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160;      <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* upper_bound,</div><d
 iv class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160;      <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> lower_bound_type = <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">KuduTableCreator::INCLUSIVE_BOUND</a>,</div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160;      <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> upper_bound_type = <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">KuduTableCreator::EXCLUSIVE_BOUND</a>);</div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160;</div><div class="line"><a name="l01038"></a><span class="lineno"> 1
 038</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* DropRangePartition(</div><div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>&#160;      <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* lower_bound,</div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160;      <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* upper_bound,</div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160;      <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> lower_bound_type = <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">KuduTableCreator::INCLUSIVE_BOUND</a>,</div><div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160;      <a class="code
 " href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> upper_bound_type = <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">KuduTableCreator::EXCLUSIVE_BOUND</a>);</div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160;</div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* timeout(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&amp; timeout);</div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160;</div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* wait(<span class="keywordtype">b
 ool</span> wait);</div><div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160;</div><div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Alter();</div><div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160;</div><div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>;</div><div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>&#160;</div><div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>
 &#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>(<a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>* client,</div><div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160;                   <span class="keyword">const</span> std::string&amp; name);</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160;</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160;  Data* data_;</div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160;</div><div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduTableAlterer);</div><div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>&#160;};</div><div class="line"><a name="l01086"></a><spa
 n class="lineno"> 1086</span>&#160;</div><div class="line"><a name="l01092"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduError.html"> 1092</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduError.html">KuduError</a> {</div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduError.html">KuduError</a>();</div><div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160;</div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; status() <span class="keyword">const</span>;</div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160;</div><d
 iv class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a>&amp; failed_op() <span class="keyword">const</span>;</div><div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160;</div><div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a>* release_failed_op();</div><div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160;</div><div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>&#160;  <span class="keywordtype">bool</span> was_possibly_successful() <span class="keyword">const</span>;</div><div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>&#160;</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160; <span class="keyw
 ord">private</span>:</div><div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160;</div><div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::Batcher;</div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::ErrorCollector;</div><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a>;</div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160;</div><div class="line"><a name="l01130"></a><span class="lineno"> 1130</sp
 an>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduError.html">KuduError</a>(<a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a>* failed_op, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; error);</div><div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160;</div><div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160;  Data* data_;</div><div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160;</div><div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduError);</div><div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160;};</div><div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160;</div><div class="
 line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160;</div><div class="line"><a name="l01197"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html"> 1197</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a> : <span class="keyword">public</span> sp::enable_shared_from_this&lt;KuduSession&gt; {</div><div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a>();</div><div class="line"><a name="l01200"></a><span class="lineno"> 1200</span>&#160;</div><div class="line"><a name="l01202"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19"> 1202</a></span>&#160;  <span cl
 ass="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19">FlushMode</a> {</div><div class="line"><a name="l01207"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b"> 1207</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b">AUTO_FLUSH_SYNC</a>,</div><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160;</div><div class="line"><a name="l01235"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1"> 1235</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1">AUTO_FLUSH_BACKGROUND</a>,</div><div class="line"><
 a name="l01236"></a><span class="lineno"> 1236</span>&#160;</div><div class="line"><a name="l01249"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a1db3efc2094da09aae45bb68475cdb4a"> 1249</a></span>&#160;    MANUAL_FLUSH</div><div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>&#160;  };</div><div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>&#160;</div><div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetFlushMode(<a class="code" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19">FlushMode</a> m) WARN_UNUSED_RESULT;</div><div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>&#160;</div><div class="line"><a name="l01263"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd4
 0d22"> 1263</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22">ExternalConsistencyMode</a> {</div><div class="line"><a name="l01282"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c"> 1282</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c">CLIENT_PROPAGATED</a>,</div><div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>&#160;</div><div class="line"><a name="l01298"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22a70010f3ef1f70b99b02328c024c436c9"> 1298</a></span>&#160;    COMMIT_WAIT</div><div class="line"><a name="l01299"></a><span class="lineno"> 1299</span>&#160;  };</div><div class="line"><a n
 ame="l01300"></a><span class="lineno"> 1300</span>&#160;</div><div class="line"><a name="l01306"></a><span class="lineno"> 1306</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetExternalConsistencyMode(<a class="code" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22">ExternalConsistencyMode</a> m)</div><div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>&#160;</div><div class="line"><a name="l01326"></a><span class="lineno"> 1326</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetMutationBufferSpace(<span class="keywordtype">size_t</span> size_bytes) WARN_UNUSED_RESULT;</div><div class="line"><a name="l01327"></a><span class="lineno"> 1327</span>&#160;</div><div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>&#160;  <a class="code" href="classkudu_1_1Status.
 html">Status</a> SetMutationBufferFlushWatermark(<span class="keywordtype">double</span> watermark_pct)</div><div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>&#160;      WARN_UNUSED_RESULT;</div><div class="line"><a name="l01353"></a><span class="lineno"> 1353</span>&#160;</div><div class="line"><a name="l01375"></a><span class="lineno"> 1375</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetMutationBufferFlushInterval(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> millis) WARN_UNUSED_RESULT;</div><div class="line"><a name="l01376"></a><span class="lineno"> 1376</span>&#160;</div><div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetMutationBufferMaxNum(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> max_num) WARN_UNUSED_RESULT;</div><div class="line"><a name="l01402"></a><span class="l
 ineno"> 1402</span>&#160;</div><div class="line"><a name="l01408"></a><span class="lineno"> 1408</span>&#160;  <span class="keywordtype">void</span> SetTimeoutMillis(<span class="keywordtype">int</span> millis);</div><div class="line"><a name="l01409"></a><span class="lineno"> 1409</span>&#160;</div><div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>&#160;</div><div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Apply(<a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a>* write_op) WARN_UNUSED_RESULT;</div><div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160;</div><div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Flush() WARN_UNUSED_RESULT;</div><div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>&#160;</di
 v><div class="line"><a name="l01495"></a><span class="lineno"> 1495</span>&#160;  <span class="keywordtype">void</span> FlushAsync(<a class="code" href="classkudu_1_1client_1_1KuduStatusCallback.html">KuduStatusCallback</a>* cb);</div><div class="line"><a name="l01496"></a><span class="lineno"> 1496</span>&#160;</div><div class="line"><a name="l01499"></a><span class="lineno"> 1499</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Close() WARN_UNUSED_RESULT;</div><div class="line"><a name="l01500"></a><span class="lineno"> 1500</span>&#160;</div><div class="line"><a name="l01509"></a><span class="lineno"> 1509</span>&#160;  <span class="keywordtype">bool</span> HasPendingOperations() const;</div><div class="line"><a name="l01510"></a><span class="lineno"> 1510</span>&#160;</div><div class="line"><a name="l01532"></a><span class="lineno"> 1532</span>&#160;  <span class="keywordtype">int</span> CountBufferedOperations() const</div><div class="line"><a name="l015
 33"></a><span class="lineno"> 1533</span>&#160;      ATTRIBUTE_DEPRECATED(&quot;this method is experimental and will disappear &quot;</div><div class="line"><a name="l01534"></a><span class="lineno"> 1534</span>&#160;                           &quot;in a future release&quot;);</div><div class="line"><a name="l01535"></a><span class="lineno"> 1535</span>&#160;</div><div class="line"><a name="l01560"></a><span class="lineno"> 1560</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetErrorBufferSpace(<span class="keywordtype">size_t</span> size_bytes);</div><div class="line"><a name="l01561"></a><span class="lineno"> 1561</span>&#160;</div><div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>&#160;  <span class="keywordtype">int</span> CountPendingErrors() const;</div><div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>&#160;</div><div class="line"><a name="l01583"></a><span class="lineno"> 1583</span>&#160;  <span class="ke
 ywordtype">void</span> GetPendingErrors(std::vector&lt;<a class="code" href="classkudu_1_1client_1_1KuduError.html">KuduError</a>*&gt;* errors, <span class="keywordtype">bool</span>* overflowed);</div><div class="line"><a name="l01584"></a><span class="lineno"> 1584</span>&#160;</div><div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>* client() const;</div><div class="line"><a name="l01587"></a><span class="lineno"> 1587</span>&#160;</div><div class="line"><a name="l01588"></a><span class="lineno"> 1588</span>&#160; private:</div><div class="line"><a name="l01589"></a><span class="lineno"> 1589</span>&#160;  class KUDU_NO_EXPORT Data;</div><div class="line"><a name="l01590"></a><span class="lineno"> 1590</span>&#160;</div><div class="line"><a name="l01591"></a><span class="lineno"> 1591</span>&#160;  friend class <a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduC
 lient</a>;</div><div class="line"><a name="l01592"></a><span class="lineno"> 1592</span>&#160;  friend class internal::Batcher;</div><div class="line"><a name="l01593"></a><span class="lineno"> 1593</span>&#160;  friend class ClientTest;</div><div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>&#160;  FRIEND_TEST(ClientTest, TestAutoFlushBackgroundApplyBlocks);</div><div class="line"><a name="l01595"></a><span class="lineno"> 1595</span>&#160;  FRIEND_TEST(ClientTest, TestAutoFlushBackgroundAndErrorCollector);</div><div class="line"><a name="l01596"></a><span class="lineno"> 1596</span>&#160;</div><div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>&#160;  explicit <a class="code" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a>(const sp::shared_ptr&lt;KuduClient&gt;&amp; client);</div><div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>&#160;</div><div class="line"><a name="l01599"></a><span class="lineno"> 1
 599</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l01600"></a><span class="lineno"> 1600</span>&#160;  Data* data_;</div><div class="line"><a name="l01601"></a><span class="lineno"> 1601</span>&#160;</div><div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a>);</div><div class="line"><a name="l01603"></a><span class="lineno"> 1603</span>&#160;};</div><div class="line"><a name="l01604"></a><span class="lineno"> 1604</span>&#160;</div><div class="line"><a name="l01605"></a><span class="lineno"> 1605</span>&#160;</div><div class="line"><a name="l01610"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html"> 1610</a></span>&#160;class KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a> {</div><div class="line"><a name="l01611"></a><span class="lineno"
 > 1611</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l01613"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348"> 1613</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">ReadMode</a> {</div><div class="line"><a name="l01621"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8"> 1621</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8">READ_LATEST</a>,</div><div class="line"><a name="l01622"></a><span class="lineno"> 1622</span>&#160;</div><div class="line"><a name="l01642"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f5
 8348a380798cc81589d865b7b2549e186b2e2"> 1642</a></span>&#160;    READ_AT_SNAPSHOT</div><div class="line"><a name="l01643"></a><span class="lineno"> 1643</span>&#160;  };</div><div class="line"><a name="l01644"></a><span class="lineno"> 1644</span>&#160;</div><div class="line"><a name="l01648"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9"> 1648</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9">OrderMode</a> {</div><div class="line"><a name="l01654"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3"> 1654</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3">UNORDERED</a>,</div><div class="line"><a name="l01655"></a>
 <span class="lineno"> 1655</span>&#160;</div><div class="line"><a name="l01660"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9a4395ad2ec57ce53e30d8b5748fa2c63a"> 1660</a></span>&#160;    ORDERED</div><div class="line"><a name="l01661"></a><span class="lineno"> 1661</span>&#160;  };</div><div class="line"><a name="l01662"></a><span class="lineno"> 1662</span>&#160;</div><div class="line"><a name="l01666"></a><span class="lineno"> 1666</span>&#160;  <span class="keyword">enum</span> { kScanTimeoutMillis = 30000 };</div><div class="line"><a name="l01667"></a><span class="lineno"> 1667</span>&#160;</div><div class="line"><a name="l01673"></a><span class="lineno"> 1673</span>&#160;  <span class="keyword">explicit</span> KuduScanner(<a class="code" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a>* table);</div><div class="line"><a name="l01674"></a><span class="lineno"> 1674</span>&#160;  ~KuduScanner();</
 div><div class="line"><a name="l01675"></a><span class="lineno"> 1675</span>&#160;</div><div class="line"><a name="l01685"></a><span class="lineno"> 1685</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetProjectedColumnNames(<span class="keyword">const</span> std::vector&lt;std::string&gt;&amp; col_names)</div><div class="line"><a name="l01686"></a><span class="lineno"> 1686</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l01687"></a><span class="lineno"> 1687</span>&#160;</div><div class="line"><a name="l01697"></a><span class="lineno"> 1697</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetProjectedColumnIndexes(<span class="keyword">const</span> std::vector&lt;int&gt;&amp; col_indexes)</div><div class="line"><a name="l01698"></a><span class="lineno"> 1698</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l01699"></a><span class="lineno"> 1699</span>&#160;</div><div class="line"><a name="l017
 05"></a><span class="lineno"> 1705</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetProjectedColumns(<span class="keyword">const</span> std::vector&lt;std::string&gt;&amp; col_names)</div><div class="line"><a name="l01706"></a><span class="lineno"> 1706</span>&#160;      WARN_UNUSED_RESULT</div><div class="line"><a name="l01707"></a><span class="lineno"> 1707</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use SetProjectedColumnNames() instead&quot;</span>);</div><div class="line"><a name="l01708"></a><span class="lineno"> 1708</span>&#160;</div><div class="line"><a name="l01717"></a><span class="lineno"> 1717</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> AddConjunctPredicate(<a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* pred) WARN_UNUSED_RESULT;</div><div class="line"><a name="l01718"></a><span class="lineno"> 1718</span>&#160;</div><div class="line"><a name="l01727"
 ></a><span class="lineno"> 1727</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> AddLowerBound(<span class="keyword">const</span> <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>&amp; key);</div><div class="line"><a name="l01728"></a><span class="lineno"> 1728</span>&#160;</div><div class="line"><a name="l01736"></a><span class="lineno"> 1736</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> AddLowerBoundRaw(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; key)</div><div class="line"><a name="l01737"></a><span class="lineno"> 1737</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use AddLowerBound() instead&quot;</span>);</div><div class="line"><a name="l01738"></a><span class="lineno"> 1738</span>&#160;</div><div class="line"><a name="l01747"></a><span class="lineno"> 1747</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Add
 ExclusiveUpperBound(<span class="keyword">const</span> <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>&amp; key);</div><div class="line"><a name="l01748"></a><span class="lineno"> 1748</span>&#160;</div><div class="line"><a name="l01756"></a><span class="lineno"> 1756</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> AddExclusiveUpperBoundRaw(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; key)</div><div class="line"><a name="l01757"></a><span class="lineno"> 1757</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use AddExclusiveUpperBound() instead&quot;</span>);</div><div class="line"><a name="l01758"></a><span class="lineno"> 1758</span>&#160;</div><div class="line"><a name="l01767"></a><span class="lineno"> 1767</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> AddLowerBoundPartitionKeyRaw(<span class="keyword">const</span> <a class="code" href
 ="classkudu_1_1Slice.html">Slice</a>&amp; partition_key);</div><div class="line"><a name="l01768"></a><span class="lineno"> 1768</span>&#160;</div><div class="line"><a name="l01777"></a><span class="lineno"> 1777</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> AddExclusiveUpperBoundPartitionKeyRaw(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; partition_key);</div><div class="line"><a name="l01778"></a><span class="lineno"> 1778</span>&#160;</div><div class="line"><a name="l01785"></a><span class="lineno"> 1785</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetCacheBlocks(<span class="keywordtype">bool</span> cache_blocks);</div><div class="line"><a name="l01786"></a><span class="lineno"> 1786</span>&#160;</div><div class="line"><a name="l01788"></a><span class="lineno"> 1788</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Open();</div><div class="line"><a na
 me="l01789"></a><span class="lineno"> 1789</span>&#160;</div><div class="line"><a name="l01805"></a><span class="lineno"> 1805</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> KeepAl

<TRUNCATED>