<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Kudu C++ client API: Deprecated List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Kudu C++ client API
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">Deprecated List </div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><dl class="reflist">
<dt><a class="anchor" id="_deprecated000010"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6da28c1ed31be30579070232164c24b4b82">kudu::client::KuduColumnStorageAttributes::GROUP_VARINT</a>  </dt>
<dd>GROUP_VARINT is not supported for valid types, and will fall back to another encoding on the server side.  </dd>
<dt><a class="anchor" id="_deprecated000009"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a2d6e5bec50a7305b3b4d75d21d000fab">kudu::client::KuduColumnStorageAttributes::KuduColumnStorageAttributes</a>  (EncodingType encoding=AUTO_ENCODING, CompressionType compression=DEFAULT_COMPRESSION, int32_t block_size=0) ATTRIBUTE_DEPRECATED("this const ructor will be private in a future release")</dt>
<dd>This constructor is deprecated for external use, and will be made private in a future release. </dd>
<dt><a class="anchor" id="_deprecated000005"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aefb6badecb950d5089b2f9d29d1f2ffe">kudu::client::KuduScanner::AddExclusiveUpperBoundRaw</a>  (const <a class="el" href="classkudu_1_1Slice.html" title="A wrapper around externally allocated data. ">Slice</a> &amp;key) ATTRIBUTE_DEPRECATED("use AddExclusiveUpperBound() instead")</dt>
<dd>Use <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a551fd38d48a686f2662727a82e79bd3d">AddExclusiveUpperBound()</a> instead. </dd>
<dt><a class="anchor" id="_deprecated000004"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3e51a978f3e54237fa60f7447ef3436e">kudu::client::KuduScanner::AddLowerBoundRaw</a>  (const <a class="el" href="classkudu_1_1Slice.html" title="A wrapper around externally allocated data. ">Slice</a> &amp;key) ATTRIBUTE_DEPRECATED("use AddLowerBound() instead")</dt>
<dd>Use <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a67691944fc112f43c565ab4486514b86">AddLowerBound()</a> instead. </dd>
<dt><a class="anchor" id="_deprecated000006"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af365f1d3b3b34aeb7d016727a9019067">kudu::client::KuduScanner::NextBatch</a>  (std::vector&lt; KuduRowResult &gt; *rows) ATTRIBUTE_DEPRECATED("use NextBatch(KuduScanBatch*) instead")</dt>
<dd>Use <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af1475d9a0667839c1ed9c3714b47d487">NextBatch(KuduScanBatch*)</a> instead. </dd>
<dt><a class="anchor" id="_deprecated000007"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a93a87740ea75c9b6524dc229576b69fc">kudu::client::KuduScanner::SetOrderMode</a>  (OrderMode order_mode) WARN_UNUSED_RESULT ATTRIBUTE_DEPRECATED("use SetFaultTolerant() instead")</dt>
<dd>Use <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a107a8a682c0977272e0ae47746d39e6f">SetFaultTolerant()</a> instead. </dd>
<dt><a class="anchor" id="_deprecated000003"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a68e2115cde71e113674e7a8b4df399ad">kudu::client::KuduScanner::SetProjectedColumns</a>  (const std::vector&lt; std::string &gt; &amp;col_names) WARN_UNUSED_RESULT ATTRIBUTE_DEPRECATED("use SetProjectedColumnNames() instead")</dt>
<dd>Use <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#abb10b26056757bf81c410d3d5e6bcc01">SetProjectedColumnNames()</a> instead. </dd>
<dt><a class="anchor" id="_deprecated000011"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a3f51ccf1a7e6f4a4fe4958073305dbab">kudu::client::KuduSchema::Reset</a>  (const std::vector&lt; KuduColumnSchema &gt; &amp;columns, int key_columns) WARN_UNUSED_RESULT</dt>
<dd>This method will be removed soon. </dd>
<dt><a class="anchor" id="_deprecated000002"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a24e68920465b5bb06f0426dea5970112">kudu::client::KuduSession::CountBufferedOperations</a>  () const ATTRIBUTE_DEPRECATED("this method is experimental and will disappear " "in a future release")</dt>
<dd>This method is experimental and will disappear in a future release. </dd>
<dt><a class="anchor" id="_deprecated000001"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#ac296091e47ca0dce18cc26e2b24b54a6">kudu::client::KuduTableCreator::split_rows</a>  (const std::vector&lt; const KuduPartialRow *&gt; &amp;split_rows) ATTRIBUTE_DEPRECATED("use add_range_partition_split() instead")</dt>
<dd>Use <code><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#adbdd2208d9ede696704fbecea15bea1f">add_range_partition_split()</a></code> instead.</dd>
</dl>
</div></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/>
<address class="footer">
  <small>Generated for Kudu version 1.11.0 on Tue Nov 5 2019 11:58:25 by Doxygen 1.8.13</small>
  <br>
  <small>Copyright © 2019 The Apache Software Foundation.</small>
</address>
</body>
</html>
